在我们的应用中,我们通常通过以下方式进行身份验证:
我们来简单分析一下不同方式在用户体系和程序实现上的差异。
JWT的实现核心是生成和验证令牌。通常在用户登录时,服务器会生成一个JWT令牌,并将其返回给客户端。客户端在后续的请求中携带该令牌,服务器通过验证令牌来确认用户身份。
IdentityServer是一个完整的身份认证和授权框架,支持OAuth2和OpenID Connect等协议。它提供了丰富的功能,如多租户支持、客户端凭据、资源服务器等。
在.NET10 中,我们可以使用PassKey来实现无密码登录。PassKey是一种基于WebAuthn的身份验证方式,允许用户使用生物识别或设备认证来登录,而无需输入密码。
即通过第三平台账号登录,如Google、Microsoft账号登录。通常需要在第三方平台注册应用,获取客户端ID和密钥,然后在应用中配置这些信息。
在配置文件中的Authentication节点下,你可以配置不同的身份验证方式。模板默认提供了以下几种身份验证方式的支持:
JwtBearer进行身份验证。当你的配置中包含这些身份验证方式并具有有效的配置时,模板会自动为你添加相应的服务和配置。
你可以在WebExtensions.cs中查看AddJwtAuthentication和AddThirdAuthentication方法的具体实现。
内容大纲