-
Notifications
You must be signed in to change notification settings - Fork 36
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
357ea9b
commit 71b47b6
Showing
219 changed files
with
266,574 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
|
||
Microsoft Visual Studio Solution File, Format Version 12.00 | ||
# Visual Studio 2013 | ||
VisualStudioVersion = 12.0.30324.0 | ||
MinimumVisualStudioVersion = 10.0.40219.1 | ||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AuthorizationAndSignalR", "AuthorizationAndSignalR\AuthorizationAndSignalR.csproj", "{9F777026-F4E7-41F6-9A50-8C5300150905}" | ||
EndProject | ||
Global | ||
GlobalSection(SolutionConfigurationPlatforms) = preSolution | ||
Debug|Any CPU = Debug|Any CPU | ||
Release|Any CPU = Release|Any CPU | ||
EndGlobalSection | ||
GlobalSection(ProjectConfigurationPlatforms) = postSolution | ||
{9F777026-F4E7-41F6-9A50-8C5300150905}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
{9F777026-F4E7-41F6-9A50-8C5300150905}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
{9F777026-F4E7-41F6-9A50-8C5300150905}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
{9F777026-F4E7-41F6-9A50-8C5300150905}.Release|Any CPU.Build.0 = Release|Any CPU | ||
EndGlobalSection | ||
GlobalSection(SolutionProperties) = preSolution | ||
HideSolutionNode = FALSE | ||
EndGlobalSection | ||
EndGlobal |
35 changes: 35 additions & 0 deletions
35
02-04-Hub-Authorization/AuthorizationAndSignalR/App_Start/BundleConfig.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
using System.Web; | ||
using System.Web.Optimization; | ||
|
||
namespace AuthorizationAndSignalR | ||
{ | ||
public class BundleConfig | ||
{ | ||
// For more information on bundling, visit http://go.microsoft.com/fwlink/?LinkId=301862 | ||
public static void RegisterBundles(BundleCollection bundles) | ||
{ | ||
bundles.Add(new ScriptBundle("~/bundles/jquery").Include( | ||
"~/Scripts/jquery-{version}.js")); | ||
|
||
bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include( | ||
"~/Scripts/jquery.validate*")); | ||
|
||
// Use the development version of Modernizr to develop with and learn from. Then, when you're | ||
// ready for production, use the build tool at http://modernizr.com to pick only the tests you need. | ||
bundles.Add(new ScriptBundle("~/bundles/modernizr").Include( | ||
"~/Scripts/modernizr-*")); | ||
|
||
bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include( | ||
"~/Scripts/bootstrap.js", | ||
"~/Scripts/respond.js")); | ||
|
||
bundles.Add(new StyleBundle("~/Content/css").Include( | ||
"~/Content/bootstrap.css", | ||
"~/Content/site.css")); | ||
|
||
// Set EnableOptimizations to false for debugging. For more information, | ||
// visit http://go.microsoft.com/fwlink/?LinkId=301862 | ||
BundleTable.EnableOptimizations = true; | ||
} | ||
} | ||
} |
13 changes: 13 additions & 0 deletions
13
02-04-Hub-Authorization/AuthorizationAndSignalR/App_Start/FilterConfig.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
using System.Web; | ||
using System.Web.Mvc; | ||
|
||
namespace AuthorizationAndSignalR | ||
{ | ||
public class FilterConfig | ||
{ | ||
public static void RegisterGlobalFilters(GlobalFilterCollection filters) | ||
{ | ||
filters.Add(new HandleErrorAttribute()); | ||
} | ||
} | ||
} |
76 changes: 76 additions & 0 deletions
76
02-04-Hub-Authorization/AuthorizationAndSignalR/App_Start/IdentityConfig.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,76 @@ | ||
using System.Threading.Tasks; | ||
using Microsoft.AspNet.Identity; | ||
using Microsoft.AspNet.Identity.EntityFramework; | ||
using Microsoft.AspNet.Identity.Owin; | ||
using Microsoft.Owin; | ||
using AuthorizationAndSignalR.Models; | ||
|
||
namespace AuthorizationAndSignalR | ||
{ | ||
// Configure the application user manager used in this application. UserManager is defined in ASP.NET Identity and is used by the application. | ||
|
||
public class ApplicationUserManager : UserManager<ApplicationUser> | ||
{ | ||
public ApplicationUserManager(IUserStore<ApplicationUser> store) | ||
: base(store) | ||
{ | ||
} | ||
|
||
public static ApplicationUserManager Create(IdentityFactoryOptions<ApplicationUserManager> options, IOwinContext context) | ||
{ | ||
var manager = new ApplicationUserManager(new UserStore<ApplicationUser>(context.Get<ApplicationDbContext>())); | ||
// Configure validation logic for usernames | ||
manager.UserValidator = new UserValidator<ApplicationUser>(manager) | ||
{ | ||
AllowOnlyAlphanumericUserNames = false, | ||
RequireUniqueEmail = true | ||
}; | ||
// Configure validation logic for passwords | ||
manager.PasswordValidator = new PasswordValidator | ||
{ | ||
RequiredLength = 6, | ||
RequireNonLetterOrDigit = true, | ||
RequireDigit = true, | ||
RequireLowercase = true, | ||
RequireUppercase = true, | ||
}; | ||
// Register two factor authentication providers. This application uses Phone and Emails as a step of receiving a code for verifying the user | ||
// You can write your own provider and plug in here. | ||
manager.RegisterTwoFactorProvider("PhoneCode", new PhoneNumberTokenProvider<ApplicationUser> | ||
{ | ||
MessageFormat = "Your security code is: {0}" | ||
}); | ||
manager.RegisterTwoFactorProvider("EmailCode", new EmailTokenProvider<ApplicationUser> | ||
{ | ||
Subject = "Security Code", | ||
BodyFormat = "Your security code is: {0}" | ||
}); | ||
manager.EmailService = new EmailService(); | ||
manager.SmsService = new SmsService(); | ||
var dataProtectionProvider = options.DataProtectionProvider; | ||
if (dataProtectionProvider != null) | ||
{ | ||
manager.UserTokenProvider = new DataProtectorTokenProvider<ApplicationUser>(dataProtectionProvider.Create("ASP.NET Identity")); | ||
} | ||
return manager; | ||
} | ||
} | ||
|
||
public class EmailService : IIdentityMessageService | ||
{ | ||
public Task SendAsync(IdentityMessage message) | ||
{ | ||
// Plug in your email service here to send an email. | ||
return Task.FromResult(0); | ||
} | ||
} | ||
|
||
public class SmsService : IIdentityMessageService | ||
{ | ||
public Task SendAsync(IdentityMessage message) | ||
{ | ||
// Plug in your sms service here to send a text message. | ||
return Task.FromResult(0); | ||
} | ||
} | ||
} |
23 changes: 23 additions & 0 deletions
23
02-04-Hub-Authorization/AuthorizationAndSignalR/App_Start/RouteConfig.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
using System; | ||
using System.Collections.Generic; | ||
using System.Linq; | ||
using System.Web; | ||
using System.Web.Mvc; | ||
using System.Web.Routing; | ||
|
||
namespace AuthorizationAndSignalR | ||
{ | ||
public class RouteConfig | ||
{ | ||
public static void RegisterRoutes(RouteCollection routes) | ||
{ | ||
routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); | ||
|
||
routes.MapRoute( | ||
name: "Default", | ||
url: "{controller}/{action}/{id}", | ||
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } | ||
); | ||
} | ||
} | ||
} |
55 changes: 55 additions & 0 deletions
55
02-04-Hub-Authorization/AuthorizationAndSignalR/App_Start/Startup.Auth.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
using Microsoft.AspNet.Identity; | ||
using Microsoft.AspNet.Identity.EntityFramework; | ||
using Microsoft.AspNet.Identity.Owin; | ||
using Microsoft.Owin; | ||
using Microsoft.Owin.Security.Cookies; | ||
using Microsoft.Owin.Security.DataProtection; | ||
using Owin; | ||
using System; | ||
using AuthorizationAndSignalR.Models; | ||
|
||
namespace AuthorizationAndSignalR | ||
{ | ||
public partial class Startup | ||
{ | ||
// For more information on configuring authentication, please visit http://go.microsoft.com/fwlink/?LinkId=301864 | ||
public void ConfigureAuth(IAppBuilder app) | ||
{ | ||
// Configure the db context and user manager to use a single instance per request | ||
app.CreatePerOwinContext(ApplicationDbContext.Create); | ||
app.CreatePerOwinContext<ApplicationUserManager>(ApplicationUserManager.Create); | ||
|
||
// Enable the application to use a cookie to store information for the signed in user | ||
// and to use a cookie to temporarily store information about a user logging in with a third party login provider | ||
// Configure the sign in cookie | ||
app.UseCookieAuthentication(new CookieAuthenticationOptions | ||
{ | ||
AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie, | ||
LoginPath = new PathString("/Account/Login"), | ||
Provider = new CookieAuthenticationProvider | ||
{ | ||
OnValidateIdentity = SecurityStampValidator.OnValidateIdentity<ApplicationUserManager, ApplicationUser>( | ||
validateInterval: TimeSpan.FromMinutes(30), | ||
regenerateIdentity: (manager, user) => user.GenerateUserIdentityAsync(manager)) | ||
} | ||
}); | ||
|
||
app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie); | ||
|
||
// Uncomment the following lines to enable logging in with third party login providers | ||
//app.UseMicrosoftAccountAuthentication( | ||
// clientId: "", | ||
// clientSecret: ""); | ||
|
||
//app.UseTwitterAuthentication( | ||
// consumerKey: "", | ||
// consumerSecret: ""); | ||
|
||
//app.UseFacebookAuthentication( | ||
// appId: "", | ||
// appSecret: ""); | ||
|
||
app.UseGoogleAuthentication(); | ||
} | ||
} | ||
} |
Oops, something went wrong.