使用IdentityServer4时,将始终显示权限授予页面
我已经设置了一个MVC应用程序和quickstarts中描述的IdentityServer。我还使用EFCore来坚持确认和授权 一切正常,即使是Windows身份验证 当我使用从MVC应用程序注销时使用IdentityServer4时,将始终显示权限授予页面,identityserver4,Identityserver4,我已经设置了一个MVC应用程序和quickstarts中描述的IdentityServer。我还使用EFCore来坚持确认和授权 一切正常,即使是Windows身份验证 当我使用从MVC应用程序注销时 public async Task Logout() { await HttpContext.Authentication.SignOutAsync("Cookies"); await HttpContext.Authentication.SignOutAsync("oidc");
public async Task Logout()
{
await HttpContext.Authentication.SignOutAsync("Cookies");
await HttpContext.Authentication.SignOutAsync("oidc");
}
我已按预期注销
但当我再次登录时,请输入我的凭据并再次单击下一页的“登录”请求权限授予。但是为什么呢?我已经在第一次登录时设置了权限。我怎样才能避免呢
如果我尝试使用Windows身份验证实现SSO,这可能会非常烦人
这个问题是否意味着授予不会被持久化并从数据库中读取?在这里发现了同样的问题
因此,他已经打开了一个问题当创建您的客户机时,您可以使用RequireSend标志关闭同意,您可以通过将AllowRememberApprove添加到true来记住它
new Client
{
ClientId = "client",
AllowRememberConsent = true
}
您可以看到文档您是说同意页面再次显示了吗?是的,这就是我的意思。抱歉。即使使用
AllowRememberApprove=true
,如果您要求另一个RefreshToken(将作用域设置为包含offline\u access
),用户也必须再次同意。请参见此处的Dominick回答-