Few years back I blogged about adding OpenID login support in ASP.NET application. This time I am blogging about adding Google login support in ASP.NET application. A friend of mine is trying to integrate multiple third party authentication support for one of the application he is developing for his client. He is using DotNetOpenAuth for Google authentication. the code I am using here is from my friend and I am sharing it with his explicit permission. First, download the latest version of DotNetOpenAuth and add its reference in your web application and these two namespaces.using DotNetOpenAuth.OpenId;
using DotNetOpenAuth.OpenId.RelyingParty;After adding the reference, add a normal button with CommandArgument to point https://www.google.com/accounts/o8/id. <asp:Button ID="btnGoogleLogin" runat="server" CommandArgument="https://www.google.com/accounts/o8/id"
OnCommand="btnGoogleLogin_Click" Text="Sign In with Google" /> On the button click event on the server side:protected void btnGoogleLogin_Click(object sender, CommandEventArgs e)
{
string discoveryUri = e.CommandArgument.ToString();
OpenIdRelyingParty openid = new OpenIdRelyingParty();
var URIbuilder = new UriBuilder(Request.Url) { Query = "" };
var req = openid.CreateRequest(discoveryUri, URIbuilder.Uri, URIbuilder.Uri);
req.RedirectToProvider();
}Read more: DZone
QR:
using DotNetOpenAuth.OpenId.RelyingParty;After adding the reference, add a normal button with CommandArgument to point https://www.google.com/accounts/o8/id. <asp:Button ID="btnGoogleLogin" runat="server" CommandArgument="https://www.google.com/accounts/o8/id"
OnCommand="btnGoogleLogin_Click" Text="Sign In with Google" /> On the button click event on the server side:protected void btnGoogleLogin_Click(object sender, CommandEventArgs e)
{
string discoveryUri = e.CommandArgument.ToString();
OpenIdRelyingParty openid = new OpenIdRelyingParty();
var URIbuilder = new UriBuilder(Request.Url) { Query = "" };
var req = openid.CreateRequest(discoveryUri, URIbuilder.Uri, URIbuilder.Uri);
req.RedirectToProvider();
}Read more: DZone
QR:
0 comments:
Post a Comment