asp.net-core - IdentityServer4 - 通过 ADFS 登录而不出现登录提示
问题描述
通过使用 IdentityServer4 和 OIDC 协议,我设法让我的 SPA 和我的 .net 核心 web api 针对 sql server 用户存储以及 ADFS 进行身份验证,这非常棒。但是,当用户第一次单击“继续使用 ADFS”按钮时,会显示登录提示,要求用户提供凭据。我的理解是,通过使用 openId connect 和 IdentityServer,我们可以将 ADFS 等外部身份提供程序添加到我们的 IdentityServer 应用程序中,如果选择 ADFS 进行登录,并且用户已经通过本地计算机登录到 ADFS,那么身份验证将无需再次输入 Windows 用户凭据即可无缝进行。当然,还有其他步骤可以实现这一点,例如将 ADFS UserId 与我们的 SQL 数据库用户 ID 表链接,
用户从 ADFS 登录注销后,下次用户选择使用 ADFS 重新登录时,在我的 IdentityServer 应用程序中运行以启动到 ADFS 的重定向的“挑战”方法通常会识别出用户已经登录最近,因此只需将他们直接登录,而无需再次提供他们的凭据。
我的问题是 - 实际上是否可以完全避免初始登录提示?或者如果用户有一段时间没有登录应用程序,浏览器会坚持提供凭据吗?
解决方案
这当然是可能的,但它可能涉及 ADFS 中的特定浏览器配置,并且还可能要求您的 IDP 位于 Windows Internet 设置中的 Intranet 区域中。
查看这些文章:
推荐阅读
- java - 使用 @JsonRootName 反序列化时出现异常
- html - 如何防止提交按钮重新加载页面,同时保持默认表单警告?
- angular - 如何修复:“在我的 Angular 7 项目中使用 SASS 而不是 CSS 时 NPM 开始损坏”
- csv - 从 CSV 文件加载数据时配置单元中 INT 列的空值
- containers - 如何在 GKE 使用 Docker Hub 私有仓库?
- android - 如何使gridview扩展?
- javascript - 声明与词法范围结果同名的变量 ReferenceError
- javascript - 用户名反应本机firebase
- python - 用户可以看到彼此的帖子。我使用了@loginrequired 装饰器,但它不起作用
- ios - 带有 NSFetchedResultsControllerDelegate 更新的 UISwipeActionsConfiguration