授权和认证 Endpoint


layout: docs-default

授权和认证 Endpoint

授权Endpoint可以用来获取访问令牌或者授权码(隐式或者授权码flow).可以使用web浏览器或者WebView来启动处理流程。

支持的参数

请看 规格.

  • client_id (required)
    • 客户端标识符
  • scope (required)
    • 一个或多个注册的作用域
  • redirect_uri (required)
    • 必须和一个允许的重定向URIs匹配上。
  • response_type (required)
    • code 请求授权码
    • token 请求访问令牌(只有资源作用域才能申请访问令牌)
    • id_token token 请求一个身份令牌和一个访问令牌 (资源作用域和身份作用域都被允许)
  • response_mode (可选)
    • form_post 通过一个表单Post发回令牌。否则直接把令牌编码后返回。
  • state (推荐)
    • idsrv 会把状态值放在响应里面送回请求方,这个可以用来关联请求和响应。
  • nonce (使用implicit flow的身份令牌必须指明)
    • idsrv 会把 nonce 的值放到身份令牌中, 可以用来关联请求和令牌)
  • prompt (可选)
    • none 请求时不会弹出UI让用户选择。如果不可能 (比如,用户必须登陆或者同意(consent)),会返回错误
    • login 显示登陆界面,即使用户已经登陆,有一个有效的会话。
  • code_challenge (使用proof keys必须使用 - v2.5新增)
    • 为 proof key flows发送code challenge )
  • code_challenge_method (可选 - 默认是当使用 proof keys为纯文本 - v2.5新增)
    • plain 表示Challenge使用纯文本(不推荐)
    • S256 表示challenge 使用SHA256哈希。
  • login_hint (可选)
    • 用这个值预填登陆页面上的用户名输入框
  • ui_locales (可选)
    • 登陆页面期望显示的语言
  • max_age (可选)
    • 用户登陆后超过多长时间(单位为秒),登陆界面弹出。
  • acr_values (可选)
    • 运行传送一些附加的认证相关信息给用户服务--值有特定格式意义:
      • idp:name_of_idp 跳过登陆/主页界面并直接把用户转到选择的第三方认证服务器(基于客户端配置)
      • tenant:name_of_tenant 用于把承租人名字转给用户服务

例子

(去除URL encoding,提高url可读性)

GET /connect/authorize?client_id=client1&scope=openid email api1&response_type=id_token token&redirect_uri=https://myapp/callback&state=abc&nonce=xyz

你可能感兴趣的:(授权和认证 Endpoint)