IIdentityServerInteractionService接口旨在提供用户界面用于与IdentityServer通信的服务,主要与用户交互有关。它可以从依赖注入系统获得,通常作为构造函数参数注入到IdentityServer的用户界面的MVC控制器中。

59.1 IIdentityServerInteractionService APIs

  • GetAuthorizationContextAsync
    基于传递给登录或同意页面的returnUrl返回AuthorizationRequest

  • IsValidReturnUrl
    指示在登录或同意后returnUrl是否为重定向的有效URL。

  • GetErrorContextAsync
    根据传递给错误页面的errorId返回ErrorMessage

  • GetLogoutContextAsync
    根据传递给注销页面的logoutId返回LogoutRequest

  • CreateLogoutContextAsync
    如果当前没有logoutId,则用于创建logoutId。这将创建一个cookie,捕获注销所需的所有当前状态,logoutId标识该cookie。这通常在没有当前logoutId时使用,并且注销页面必须捕获当前用户在重定向到外部身份提供程序以进行注销之前注销所需的状态。新创建的logoutId需要在注销时往返外部身份提供商,然后在注销回调页面上使用,就像在普通注销页面上一样。

  • GrantConsentAsync
    接受ConsentResponse以通知IdentityServer用户同意特定的AuthorizationRequest

  • GetAllUserConsentsAsync
    返回用户的Consent集合。

  • RevokeUserConsentAsync
    撤消用户对客户端的所有同意和授权。

  • RevokeTokensForCurrentSessionAsync
    撤消用户在当前会话期间签署的客户的所有同意和授权。

59.2 AuthorizationRequest

  • ClientId
    发起请求的客户端标识符。

  • RedirectUri
    成功授权后将用户重定向到的URI。

  • DisplayMode
    显示模式从授权请求传递。

  • UiLocales
    从授权请求传递的UI语言环境。

  • IdP
    外部身份提供者请求。这用于绕过家庭领域发现(HRD)。这是通过“idp:”前缀提供给授权请求的acr_values参数。

  • Tenant
    租户请求。这是通过“tenant:”前缀提供给授权请求上的acr_values参数。

  • LoginHint
    用户将用于登录的预期用户名。这是通过授权请求上的login_hint参数从客户端请求的。

  • PromptMode
    授权请求中请求的提示模式。

  • AcrValues
    从授权请求传递的acr值。

  • ScopesRequested
    授权请求中请求的范围。

  • Parameters
    整个参数集合传递给授权请求。

59.3 ErrorMessage

  • DisplayMode
    显示模式从授权请求传递。

  • UiLocales
    从授权请求传递的UI语言环境。

  • Error
    错误代码。

  • RequestId
    每请求标识符。这可用于向最终用户显示,并可用于诊断。

59.4 LogoutRequest

  • ClientId
    发起请求的客户端标识符。

  • PostLogoutRedirectUri
    用户在注销后将其重定向到的URL。

  • SessionId
    用户当前的会话ID。

  • SignOutIFrameUrl
    要在注销页面上的<iframe>中呈现以启用单点注销的URL。

  • Parameters
    整个参数集合传递给结束会话端点。

  • ShowSignoutPrompt
    指示是否应根据传递到结束会话端点的参数提示用户注销。

59.5 ConsentResponse

  • ScopesConsented
    用户同意的范围集合。

  • RememberConsent
    指示是否持久保留用户同意的标志。

59.6 Consent

  • SubjectId
    授予同意的主题ID。

  • ClientId
    同意的客户端标识符。

  • Scopes
    范围的集合同意。

  • CreationTime
    获得同意的日期和时间。

  • Expiration
    同意过期的日期和时间。

github地址

第59章 IdentityServer交互服务 - Identity Server 4 中文文档(v1.0.0)的更多相关文章

  1. 第60章 设备流交互服务 - Identity Server 4 中文文档(v1.0.0)

    该IDeviceFlowInteractionService接口旨在提供用户界面用于在设备流授权期间与IdentityServer通信的服务.它可以从依赖注入系统获得,通常作为构造函数参数注入到Ide ...

  2. 第10章 使用密码保护API - Identity Server 4 中文文档(v1.0.0)

    OAuth 2.0资源所有者密码授权允许客户端向令牌服务发送用户名和密码,并获取代表该用户的访问令牌. 除了无法承载浏览器的旧应用程序之外,规范通常建议不要使用资源所有者密码授予.一般来说,当您要对用 ...

  3. 第65章 博客帖子 - Identity Server 4 中文文档(v1.0.0)

    第65章 博客帖子 65.1 团队帖子 65.1.1 2019 IdentityServer中的范围和声明设计 尝试使用IdentityServer4的设备流程 OAuth2中隐含流的状态 另一种保护 ...

  4. 第44章 添加新协议 - Identity Server 4 中文文档(v1.0.0)

    除了对OpenID Connect和OAuth 2.0的内置支持之外,IdentityServer4还允许添加对其他协议的支持. 您可以将这些附加协议端点添加为中间件或使用例如MVC控制器.在这两种情 ...

  5. 第14章 添加JavaScript客户端 - Identity Server 4 中文文档(v1.0.0)

    本快速入门将展示如何构建基于浏览器的JavaScript客户端应用程序(有时称为" SPA "). 用户将登录IdentityServer,使用IdentityServer发出的访 ...

  6. 第4章 打包和构建 - Identity Server 4 中文文档(v1.0.0)

    IdentityServer由许多nuget包组成. 4.1 IdentityServer4 nuget | github上 包含核心IdentityServer对象模型,服务和中间件.仅包含对内存配 ...

  7. 第23章 Windows身份验证 - Identity Server 4 中文文档(v1.0.0)

    在支持的平台上,您可以使用IdentityServer使用Windows身份验证对用户进行身份验证(例如,针对Active Directory).当前使用以下命令托管IdentityServer时,W ...

  8. 第3章 支持和规范 - Identity Server 4 中文文档(v1.0.0)

    IdentityServer实现以下规范: 3.1 OpenID Connect OpenID Connect Core 1.0 (规范) OpenID Connect Discovery 1.0 ( ...

  9. Identity Server 4 中文文档(v1.0.0) 目录

    欢迎来到IdentityServer4 第一部分 简介 第1章 背景 第2章 术语 第3章 支持和规范 第4章 打包和构建 第5章 支持和咨询选项 第6章 演示服务器和测试 第7章 贡献 第二部分 快 ...

随机推荐

  1. md5 加密文件

    import hashlibimport os def get_md5(file_path): md5 = None if os.path.isfile(file_path): f = open(fi ...

  2. vuex学习

    Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 简单的理解就是你在state中定义了一个数 ...

  3. swoole+websocket+redis实现一对一聊天

    如同web端的QQ和微信一样,这是一个web端的聊天程序. 环境:ubuntu + php + swoole扩展 + redis + mysql Redis 实现每个连接websocket的服务都唯一 ...

  4. anaconda安装opencv(python)

    1.win10 win10没有安装python,只安装了anaconda,然后使用pip安装opencv-python,版本很新,opencv_python4.0.0的. 网速有点莫名其妙,时快时慢 ...

  5. conda 查看已有环境

    conda info -e # conda environments: # dlcv /Users/enzhao/suanec/libs/anaconda2/envs/dlcv py36 /Users ...

  6. Android APK反编译:APKtool使用详解

    导言:在我们安卓开发当中,我们不仅需要掌握基础的开发技能,也需要掌握软件的安全技能,这样才可以让我们的软件能够成为一款能够真正可以进行发布的软件,同时也可以让自己的核心技术不会被别人所盗取. 第一步. ...

  7. Java线程池核心原理剖析

    在系统开发时,我们经常会遇到“池”的概念.使用池一种以空间换时间的做法,通常在内存中事先保存一系列整装待命的对象,以供后期供其他对象随时调用.常见的池有:数据库连接池,socket连接池,线程池等.今 ...

  8. 通信统计接口字段填充内容shell脚本

    现在通信行业上班,最麻烦的就是计算各个协议接口字段填充的内容是否正确.经历了小白似的一个个字段统计在到单个接口所有字段统计,然后到现在的多个接口一次统计.在大大节省了时间的同时,让自己有更充足的时间来 ...

  9. .NET Core 2.0迁移技巧之web.config配置文件

    大家都知道.NET Core现在不再支持原来的web.config配置文件了,取而代之的是json或xml配置文件.官方推荐的项目配置方式是使用appsettings.json配置文件,这对现有一些重 ...

  10. CentOS Too Many Open Files 解决

    问题 在使用 WRK 对应用服务进行压测的时候,提示 "too many open files" 信息,导致无法启动测试. 原因 CentOS 7.x 默认的打开文件数目限制为 1 ...