1. 程式人生 > >第47章 授權端點(Authorize Endpoint) - Identity Server 4 中文文檔(v1.0.0)

第47章 授權端點(Authorize Endpoint) - Identity Server 4 中文文檔(v1.0.0)

Nid str ons 響應 challenge redirect 授權 轉發 必須

授權端點可用於通過瀏覽器請求令牌或授權碼。此過程通常涉及最終用戶的身份驗證和可選的同意。

註意
IdentityServer支持OpenID Connect和OAuth 2.0授權請求參數的子集。有關完整列表,請參見此處。

  • client_id
    客戶的標識符(必填)。

  • scope
    一個或多個註冊範圍(必填)

  • redirect_uri
    必須與該客戶端允許的重定向URI之一完全匹配(必需)

  • response_type
    • id_token 請求身份令牌(僅允許身份範圍)
    • token 請求訪問令牌(僅允許資源範圍)
    • id_token token 請求身份令牌和訪問令牌
    • code 請求授權碼
    • code id_token
      請求授權代碼和身份令牌
    • code id_token token 請求授權代碼,身份令牌和訪問令牌
  • response_mode
    • form_post 將令牌響應作為表單發送而不是片段編碼重定向(可選)
  • state
    identityserver將回顯令牌響應的狀態值,這是針對客戶端和提供者之間的往返狀態,關聯請求和響應以及CSRF /重放保護。(推薦的)

  • nonce
    identityserver將回顯身份令牌中的nonce值,這是為了重放保護)
    通過隱式授權對身份令牌是必需的。

  • prompt
    • none請求期間不會顯示任何UI。如果這是不可能的(例如,因為用戶必須登錄或同意),則返回錯誤
    • login
      即使用戶已登錄並具有有效會話,也會顯示登錄UI
  • code_challenge
    發送PKCE的代碼質詢

  • code_challenge_method
    plain表示挑戰是使用純文本(不推薦) S256表示使用SHA256對挑戰進行哈希處理

  • login_hint
    可用於預先填寫登錄頁面上的用戶名字段

  • ui_locales
    提供有關登錄UI所需顯示語言的提示

  • max_age
    如果用戶的登錄會話超過最大年齡(以秒為單位),將顯示登錄UI

  • acr_values
    允許傳遞其他身份驗證相關信息 - 身份服務器特殊情況下面的專有acr_values:
    • idp:name_of_idp 繞過login / home領域屏幕並將用戶直接轉發到選定的身份提供者(如果允許每個客戶端配置)
    • tenant:name_of_tenant 可用於將租戶名稱傳遞給登錄UI

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

(刪除了URL編碼,並添加了換行符以提高可讀性)

註意
您可以使用IdentityModel客戶端庫以編程方式創建授權請求.NET代碼。有關更多信息,請查看IdentityModel文檔。

github地址

第47章 授權端點(Authorize Endpoint) - Identity Server 4 中文文檔(v1.0.0)