summaryrefslogtreecommitdiff
path: root/Project-Unite/App_Start/Startup.Auth.cs
diff options
context:
space:
mode:
authorMichael <[email protected]>2017-03-20 16:45:17 -0400
committerMichael <[email protected]>2017-03-20 16:45:17 -0400
commitcdc61eb4ea5309769ad4db84d92594e4dc3dff67 (patch)
treea8297a7aecc4376f07a497a5e02ab5ff165bfbd3 /Project-Unite/App_Start/Startup.Auth.cs
parentd9f475e1f33bbf39ca0d79d7a6b0c2fd501b4f2d (diff)
downloadproject-unite-cdc61eb4ea5309769ad4db84d92594e4dc3dff67.tar.gz
project-unite-cdc61eb4ea5309769ad4db84d92594e4dc3dff67.tar.bz2
project-unite-cdc61eb4ea5309769ad4db84d92594e4dc3dff67.zip
Initial commit (azure deploy test)
Diffstat (limited to 'Project-Unite/App_Start/Startup.Auth.cs')
-rw-r--r--Project-Unite/App_Start/Startup.Auth.cs70
1 files changed, 70 insertions, 0 deletions
diff --git a/Project-Unite/App_Start/Startup.Auth.cs b/Project-Unite/App_Start/Startup.Auth.cs
new file mode 100644
index 0000000..5bd6820
--- /dev/null
+++ b/Project-Unite/App_Start/Startup.Auth.cs
@@ -0,0 +1,70 @@
+using System;
+using Microsoft.AspNet.Identity;
+using Microsoft.AspNet.Identity.Owin;
+using Microsoft.Owin;
+using Microsoft.Owin.Security.Cookies;
+using Microsoft.Owin.Security.Google;
+using Owin;
+using Project_Unite.Models;
+
+namespace Project_Unite
+{
+ 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, user manager and signin manager to use a single instance per request
+ app.CreatePerOwinContext(ApplicationDbContext.Create);
+ app.CreatePerOwinContext<ApplicationUserManager>(ApplicationUserManager.Create);
+ app.CreatePerOwinContext<ApplicationSignInManager>(ApplicationSignInManager.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
+ {
+ // Enables the application to validate the security stamp when the user logs in.
+ // This is a security feature which is used when you change a password or add an external login to your account.
+ OnValidateIdentity = SecurityStampValidator.OnValidateIdentity<ApplicationUserManager, ApplicationUser>(
+ validateInterval: TimeSpan.FromMinutes(30),
+ regenerateIdentity: (manager, user) => user.GenerateUserIdentityAsync(manager))
+ }
+ });
+ app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie);
+
+ // Enables the application to temporarily store user information when they are verifying the second factor in the two-factor authentication process.
+ app.UseTwoFactorSignInCookie(DefaultAuthenticationTypes.TwoFactorCookie, TimeSpan.FromMinutes(5));
+
+ // Enables the application to remember the second login verification factor such as phone or email.
+ // Once you check this option, your second step of verification during the login process will be remembered on the device where you logged in from.
+ // This is similar to the RememberMe option when you log in.
+ app.UseTwoFactorRememberBrowserCookie(DefaultAuthenticationTypes.TwoFactorRememberBrowserCookie);
+
+ // 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(new GoogleOAuth2AuthenticationOptions()
+ {
+ ClientId = "433137899460-02t7aruq56lddf8hckpgad44rhjc4h7d.apps.googleusercontent.com",
+ ClientSecret = "1TnTKaWFoflG0DFQSrqjUjXP"
+ });
+
+
+ }
+ }
+} \ No newline at end of file