后端安全保障:ASP.NET 与 Auth0 的集成与应用
1. 用 Auth0 配置 ASP.NET 后端
在应用中,我们将使用名为 Auth0 的现成身份服务。Auth0 实现了 OIDC(OpenID Connect),并且对于少量用户是免费的。使用 Auth0 能让我们专注于与身份服务集成,而非花费时间构建自己的服务。
1.1 设置 Auth0
要将 Auth0 设置为身份提供者,可按以下步骤操作:
1. 若还没有 Auth0 账户,可在 https://auth0.com/signup 注册。
2. 拥有 Auth0 账户并登录后,需更改租户设置中的默认受众。点击用户头像并选择“设置”,进入租户设置。在“API 授权设置”部分找到“默认受众”选项,将其更改为 https://qanda
。此设置会让 Auth0 在生成的 JWT(JSON Web Token)的 aud
有效负载字段中添加 https://qanda
,并触发 Auth0 以 JWT 格式生成访问令牌。ASP.NET 后端在授予对受保护资源的访问权限之前,也会检查访问令牌是否包含此数据。
3. 告知 Auth0 我们的 React 前端信息。在左侧导航菜单中,点击“应用程序”,然后点击“创建应用程序”按钮。
4. 选择“单页 Web 应用程序”应用类型,然后点击“创建”按钮,这样 SPA 客户端配置就会创建完成。
5. 在 SPA 客户端配置中更改一些