我想在 ASP .NET Core 中实现一个身份验证系统,其中:
用户单击一个看起来像标准 Google 登录按钮的按钮。
然后系统会提示用户登录 Google 帐户并登录。
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier
其值等于user_id
登录的 Google 帐户的声明将添加到类User
中的变量中RazorBasePage
。
服务器将用户添加到用户表中user_id
作为主键。
我最初研究了使用内置 ASP .NET Identity 系统的解决方案。然而,我很快意识到它的功能远远超出了我的需要。
而且我还调查了谷歌的一些关于身份验证的开发者页面。该系统允许开发者轻松地在客户端实现身份验证系统——需要额外的步骤来将身份验证传递到服务器。
我当前在 StartUp.cs 中的 ConfigureServices 方法包含以下代码:
services.AddAuthentication(options => {
options.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme;
options.DefaultChallengeScheme = GoogleDefaults.AuthenticationScheme;
})
.AddCookie()
.AddGoogle(options => {
options.ClientId = Configuration["Authentication:Google:ClientId"];
options.ClientSecret = Configuration["Authentication:Google:ClientSecret"];
options.SignInScheme = CookieAuthenticationDefaults.AuthenticationScheme;
options.SaveTokens = true;
});
任何有关如何实施此类系统的提示将不胜感激。谢谢!
慕桂英546537
元芳怎么了
相关分类