本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
IdP SAML聲明端點
/saml2/idpresponse
接收SAML宣告。在 service-provider-initiated (SP 啟動) 登入中,您的應用程式不會直接與此端點互動,您的 SAML 2.0 身分提供者 (IdP會利用使用者的SAML回應重新導向您的使用者。對於 SP 啟動的登入,請使用 saml2/idpresponse
作為聲明消費者服務 (ACS) 的路徑來設定 IdPURL。如需工作階段啟動的詳細資訊,請參閱 SAML Amazon Cognito 使用者集區中的工作階段啟動。
在 IdP 啟動的登入中,在您使用 2.0 供應商登入使用者後, 會在應用程式中叫用此端點SAML的請求。您的使用者會在瀏覽器中使用 IdP 登入,然後您的應用程式會收集SAML聲明並將其提交至此端點。您必須在HTTP POST
請求的內文中透過 提交SAML宣告HTTPS。POST
請求的內文必須是 SAMLResponse
參數和 Relaystate
參數。如需詳細資訊,請參閱使用 IdP 啟動的SAML登入。
POST
/saml2/idpresponse
若要在 IdP 啟動的登入中使用/saml2/idpresponse
端點,請產生具有參數的POST請求,提供使用者集區有關使用者工作階段的資訊。
-
他們想要登入的應用程式用戶端。
-
他們想要最終URL回呼的回呼。
-
他們想要在使用者的存取權杖中請求的 OAuth2.0 範圍。
-
啟動登入請求的 IdP。
IdP 啟動的請求內文參數
- SAMLResponse
-
來自與使用者集區中有效應用程式用戶端和 IdP 組態相關聯之 IdP IdP 的 Base64-encodedSAML宣告。
- RelayState
-
RelayState
參數包含您要傳遞給oauth2/authorize
端點的請求參數。如需這些參數的詳細資訊,請參閱 授權端點。- response_type
-
2.0 OAuth 授予類型。
- client_id
-
應用程式用戶端 ID。
- redirect_uri
-
驗證URL伺服器在 Amazon Cognito 授權使用者之後重新導向瀏覽器的 。
- identity_provider
-
您要重新導向使用者的身分提供者名稱。
- idp_identifier
-
您要重新導向使用者之身分提供者的識別碼。
- scope
-
您希望使用者從授權伺服器請求的 OAuth 2.0 範圍。
具有正面回應的請求範例
範例 – POST請求
下列請求是針對應用程式用戶端 MySAMLIdP
中來自 IdP 的使用者授予授權碼1example23456789
。使用者https://www.example.com
會使用其授權碼重新導向至 ,該授權碼可交換為包含具有 OAuth 2.0 範圍 openid
、 email
和 之存取權杖的權杖。 phone
POST /saml2/idpresponse HTTP/1.1 User-Agent:
USER_AGENT
Accept: */* Host:example.auth.us-east-1.amazoncognito.com
Content-Type: application/x-www-form-urlencoded SAMLResponse=[Base64-encoded SAML assertion]
&RelayState=identity_provider%3DMySAMLIdP
%26client_id%3D1example23456789
%26redirect_uri%3Dhttps%3A%2F%2Fwww.example.com
%26response_type%3Dcode
%26scope%3Demail%2Bopenid%2Bphone
範例 – 回應
以下是對上一個請求的回應。
HTTP/1.1 302 Found Date: Wed, 06 Dec 2023 00:15:29 GMT Content-Length: 0 x-amz-cognito-request-id: 8aba6eb5-fb54-4bc6-9368-c3878434f0fb Location:
https://www.example.com
?code=[Authorization code]