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. Vue 项目: npm run dev 报错 webpack-dev-server

    从码云上下载vue项目,运行npm run dev 时报错: > webpack-dev-server --inline --progress --config build/webpack.de ...

  2. vi 配置

    vim       ~/.vimrc source    ~/.vimrc 添加相关配置 一直生效 0  行首 $    行尾 spacebar   空格键:         合并多行 spaceba ...

  3. python Ajax

    Ajax一.准备知识JSON1.什么是json JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) JSON 是轻量级的文本数据交换格式 JSO ...

  4. vscode设置

    通过ctrl+滚轮实现字体大小改变:在文件-->首选项-->设置-->用户设置中添加如下代码:"editor.mouseWheelZoom": true,

  5. 关于分布式环境下的id生成

    public class IdWorker { //基准时间 public const long Twepoch = 1288834974657L; //机器标识位数 ; //数据标志位数 ; //序 ...

  6. [Swift]LeetCode104. 二叉树的最大深度 | Maximum Depth of Binary Tree

    Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the long ...

  7. [Swift]LeetCode920. 播放列表的数量 | Number of Music Playlists

    Your music player contains N different songs and she wants to listen to L (not necessarily different ...

  8. JS设计模式之单例模式

    单例模式 单例模式的定义是:保证一个类只有一个实例,并提供一个访问它的全局访问点.比如说购物车,在一个商城中,我们只需要一个购物车,购物车在整个商城中是唯一的,不需要多次创建,即使多次点击购物车按钮, ...

  9. Java 8中用法优雅的Stream,性能也"优雅"吗?

    之前的文章中我们介绍了Java 8中Stream相关的API,我们提到Stream API可以极大提高Java程序员的生产力,让程序员写出高效率.干净.简洁的代码. 那么,Stream API的性能到 ...

  10. 用CSS实现一个抽奖转盘

    效果 基本是用CSS实现的,没有用图片,加一丢丢JS.完全没有考虑兼容性. 首先画一个转盘, <!DOCTYPE html> <html lang="en"> ...