Google 做為 IdP 時支援登入提示參數,可在服務供應商 (SP) 啟動的登入程序中,簡化使用者的登入流程。如有登入提示,Google 驗證伺服器會使用這項提示執行以下操作:
- 預先填入電子郵件欄位:驗證伺服器會在登入表單中預先填入電子郵件地址,為使用者省下執行此步驟的時間。
- 啟用直接登入功能:如果與提示相關聯的使用者已與 Google 建立有效工作階段,伺服器會自動將他們登入,提供流暢的體驗。
服務供應商需求
如果應用程式知道嘗試登入的使用者身分,就可以在單一登入 (SSO) 網址的 HTTP 要求中,加入登入提示參數 (login_hint)。login_hint 的值應為使用者的 NameID,如下例所示:
https://www.accounts.google.com/o/saml2/idp?idpid=<customer_id>&login_hint=<email_id_of_the_user>
注意:Google 的 SAML IdP 不使用 AuthnRequest 的 Subject 元素中可能出現的 NameID。改用 login_hint。
使用登入提示時的登入行為
下表概略說明當 SAML 要求中出現登入提示參數時,使用者登入 Google 的情況:
| 已登入的使用者 | 登入提示值 | 行為 |
|---|---|---|
| 無 | 無 | 使用者會看到一般的 Google 登入頁面。 |
| user@domain.com | Google 登入頁面上的電子郵件地址會預先填入「user@domain.com」user@domain.com。 | |
| user1@domain.com | 無 | 系統會略過 Google 登入頁面,並將 user1 直接登入服務供應商。 |
| user1@domain.com | ||
| user2@domain.com | Google 登入頁面會預先填入「user2@domain.com」user2@domain.com。 | |
| user1@domain.com user2@domain.com |
無 | Google 帳戶選擇工具畫面會顯示所有已登入的使用者。 |
| user1@domain.com |
系統會略過 Google 登入頁面,並將 user1 直接登入服務供應商。 |
|
| user2@domain.com | 系統會略過 Google 登入頁面,並將 user2 直接登入服務供應商。 | |
|
user3@domain.com |
Google 登入頁面會預先填入「user3@domain.com」user3@domain.com。 |