Example #1
0
 private void ConfigureAuth()
 {
     var googleClient = new GoogleOAuth2Client(ConfigurationManager.AppSettings["Google.ClientId"],
         ConfigurationManager.AppSettings["Google.ClientSecret"]);
     var extradata = new Dictionary<string, object>();
     OAuthWebSecurity.RegisterClient(googleClient, "Google", extradata);
 }
Example #2
0
        public static void RegisterAuth()
        {
            // To let users of this site log in using their accounts from other sites such as Microsoft, Facebook, and Twitter,
            // you must update this site. For more information visit http://go.microsoft.com/fwlink/?LinkID=252166

            //OAuthWebSecurity.RegisterMicrosoftClient(
            //    clientId: "",
            //    clientSecret: "");

            OAuthWebSecurity.RegisterTwitterClient(
                consumerKey: ConfigurationManager.AppSettings["twitterConsumerKey"],
                consumerSecret: ConfigurationManager.AppSettings["twitterSecretKey"]);

            //https://github.com/mj1856/DotNetOpenAuth.FacebookOAuth2
            var facebookAppId = ConfigurationManager.AppSettings["facebookAppId"];
            var facebookAppSecret = ConfigurationManager.AppSettings["facebookAppSecret"];
            var client = new FacebookOAuth2Client(facebookAppId, facebookAppSecret, "read_stream", "publish_actions", "publish_stream", "user_photos", "user_location");
            var extraData = new Dictionary<string, object>();
            //extraData.Add("read_stream", "read_stream");
            //string[] scope = new string[] {"read_stream"};
            OAuthWebSecurity.RegisterClient(client, "Facebook", extraData);

            /*
            OAuthWebSecurity.RegisterFacebookClient(
                appId: ConfigurationManager.AppSettings["facebookAppId"],
                appSecret: ConfigurationManager.AppSettings["facebookAppSecret"]);
            */
             //   OAuthWebSecurity.RegisterGoogleClient();

            var googleClientId = ConfigurationManager.AppSettings["googleClientId"];
            var googleClientSecret = ConfigurationManager.AppSettings["googleClientSecret"];
            var googleClient = new GoogleOAuth2Client(googleClientId, googleClientSecret);
            var googleExtraData = new Dictionary<string, object>();
            OAuthWebSecurity.RegisterClient(googleClient, "Google", extraData);
        }
		public static AuthenticationResult VerifyAuthentication()
		{
			var ms = new GoogleOAuth2Client(Configuration.OauthClientId, Configuration.OauthClientSecret);
			var manager = new OpenAuthSecurityManager(new HttpContextWrapper(HttpContext.Current), 
				ms, OAuthDataProvider.Instance);
			GoogleOAuth2Client.RewriteRequest();
			return manager.VerifyAuthentication(Configuration.OauthRedirect);
		}
		public ActionResult OpenId(LoginModel model)
		{
			Identifier id;
			if (Identifier.TryParse(model.OpenID_Identifier, out id))
			{
				try
				{
					model.Config = _services.Config.Current;
					var openId = new OpenIdRelyingParty();
					returnToUrl = new Uri(Url.Action("OpenIdCallback", "Authentication", new { ReturnUrl = model.ReturnUrl }, Request.Url.Scheme), UriKind.Absolute);
					// hack for google oauth2
					if (model.OpenID_Identifier.Contains("google"))
					{
						client = new GoogleOAuth2Client(model.Config.ClientId, model.Config.ClientSecret);
						client.RequestAuthentication(this.HttpContext, returnToUrl);
						GoogleOAuth2Client.RewriteRequest();
						return Redirect(returnToUrl.ToString());
					}
					else
					{
						var request = openId.CreateRequest(id, Realm.AutoDetect, returnToUrl);

						// add request for name and email using sreg (OpenID Simple Registration
						// Extension)
						request.AddExtension(new ClaimsRequest
						{
							Email = DemandLevel.Require,
							FullName = DemandLevel.Require,
							Nickname = DemandLevel.Require
						});

						// also add AX request
						var axRequest = new FetchRequest();
						axRequest.Attributes.AddRequired(WellKnownAttributes.Name.FullName);
						axRequest.Attributes.AddRequired(WellKnownAttributes.Name.First);
						axRequest.Attributes.AddRequired(WellKnownAttributes.Name.Last);
						axRequest.Attributes.AddRequired(WellKnownAttributes.Contact.Email);
						request.AddExtension(axRequest);

						var redirectingResponse = request.RedirectingResponse;

						return redirectingResponse.AsActionResult();
					}
				}
				catch (ProtocolException ex)
				{
					model.Message = ex.Message;
					return View("Login", model);
				}
			}
			else
			{
				model.Message = "Invalid identifier";
				return View("Login", model);
			}
		}
		public static void Authenticate()
		{
			string[] scopes = {
				"https://www.googleapis.com/auth/userinfo.email",
				"https://www.googleapis.com/auth/userinfo.profile",
			};
			var ms = new GoogleOAuth2Client(Configuration.OauthClientId, Configuration.OauthClientSecret, scopes);
			new OpenAuthSecurityManager(new HttpContextWrapper(HttpContext.Current),
				ms, OAuthDataProvider.Instance).RequestAuthentication(Configuration.OauthRedirect);
		}
Example #6
0
 public static void RegisterAuth()
 {
     //Register Google OAuth
     // OAuthWebSecurity.RegisterGoogleClient();
     var client = new GoogleOAuth2Client("14362457062.apps.googleusercontent.com", "AAHirbGW44QCmGG1VUSqvV2c",
         new[]
         {
             "userinfo.profile",
             "userinfo.email",
             "https://mail.google.com/",
             "calendar.readonly",
             "drive.readonly"
         });
     var extraData = new Dictionary<string, object>();
     OAuthWebSecurity.RegisterClient(client, "Google", extraData);
 }
Example #7
0
        public static void RegisterAuth()
        {
            // To let users of this site log in using their accounts from other sites such as Microsoft, Facebook, and Twitter,
            // you must update this site. For more information visit http://go.microsoft.com/fwlink/?LinkID=252166

            //OAuthWebSecurity.RegisterMicrosoftClient(
            //    clientId: "",
            //    clientSecret: "");

            OAuthWebSecurity.RegisterTwitterClient(
                consumerKey: Resources.Providers.TwitterConsumerKey,
                consumerSecret: Resources.Providers.TwitterConsumerSecret);

            OAuthWebSecurity.RegisterFacebookClient(
                appId: Resources.Providers.FacebookAppId,
                appSecret: Resources.Providers.FacebookAppSecret);
            var client = new GoogleOAuth2Client(
                Resources.Providers.GoogleClientId,
                Resources.Providers.GoogleClientSecret);
            var extraData = new Dictionary<string, object>();
            OAuthWebSecurity.RegisterClient(client, "Google", extraData);
        }
Example #8
0
        public static void RegisterAuth()
        {
            // To let users of this site log in using their accounts from other sites such as Microsoft, Facebook, and Twitter,
            // you must update this site. For more information visit http://go.microsoft.com/fwlink/?LinkID=252166

            //OAuthWebSecurity.RegisterMicrosoftClient(
            //    clientId: "",
            //    clientSecret: "");

            //OAuthWebSecurity.RegisterTwitterClient(
            //    consumerKey: "",
            //    consumerSecret: "");

            //OAuthWebSecurity.RegisterFacebookClient(
            //    appId: "",
            //    appSecret: "");

            var client = new GoogleOAuth2Client("1082044350279.apps.googleusercontent.com", "vVT5cAMHKES56aaE0keNBhOA");
            var extraData = new Dictionary<string, object>();
            OAuthWebSecurity.RegisterClient(client, "Google", extraData);

            //OAuthWebSecurity.RegisterGoogleClient();
        }