必要條件
為了設定單一登入 (SSO),你必須:
擁有一組附有全域管理控制台的 OpenAI 方案
成為全域管理員
在繼續之前,請審閱我們的 SSO 概觀和使用者管理文件頁面,確保你熟悉我們的單一登入架構。
如果你先前已為 API 平台組織或是 ChatGPT 工作區設定過 SSO 機制,那麼應該可以在 OpenAI Identity 頁面開始設定。如果你在全域管理控制台中找不到你想要為其啟用 SSO 機制之工作區或是組織,請透過 support@openai.com 與專員聯絡。
⚠️ 單一登入(SSO)機制的設定若是有誤的話,你的使用者屆時便無法順利登入帳戶!
錯誤的設定可能會導致你的使用者無法存取需要完成單一登入(SSO)的組織和工作區。我們在這裡建議你:作為全域管理員的你,可以考慮將單一登入(SSO)的機制設定為管理員入口網站的「可選用」機制。
在設定的過程中,建議你可以開啟兩個個別獨立的登入視窗:
有人透過無痕視窗登入
有人透過你的標準瀏覽器登入
這讓你可以在一個視窗中測試登入程序和你的單一登入/網域驗證設定,並在需要時透過第二個視窗來還原變更。
測試單一登入
如果你想在不影響使用者的情況下測試設定程序,則可以透過應用程式在這裡進行。
在此測試應用程式上完成成功的連線不會繫結回你的生產組織,也不會儲存該連線 (因此一旦準備好,你可以在生產執行個體中重複使用相同的參數)。這表示在你熟悉要求並解決任何缺少的先決條件時,使用它作為沙箱或 Playground 是安全的。
啟用單一登入
首先,請自全域管理控制台開啟 OpenAI Identity 的頁面。另外,你也可以自 ChatGPT 的「管理工作區」設定中開啟「身份與部署」的頁面,或是在你 API 平台組織設定的頁面中開啟「身分」分頁並透過其中的連結前往該頁面。
以下部分範例將展示 Okta 中的設定,但相同邏輯應適用於所有 SAML IdP。
網域驗證
為了啟用單一登入,我們會要求先驗證至少一個網域。
重要:請記得審閱下游影響,網域驗證可能會對擁有該網域的使用者產生影響。
按一下「+ 新增網域」按鈕並輸入你的 DNS 以開始:

一旦提交,我們會提供一個金鑰供驗證網域的擁有權。前往你的 DNS 提供者,並新增一個包含所提供值的 TXT 記錄:

你的 TXT 記錄必須能夠透過 DNS 查詢來連線,才能使驗證檢查成功。
在你的 DNS 提供者中完成此操作後,返回設定頁面並按一下「檢查」按鈕。如果你的網域擁有權已成功驗證,你會看到狀態更新為「已驗證」。

你可以在每個管理員入口網站中新增最多 99 個有經過驗證的網域;你屆時會有七天的時間來完成驗證檢查,過了七天之後,我們才會將該網域標記為逾期失效。你只能在單一管理員入口網站中驗證網域。如果你需要在你管理員入口網站以外的組織或是工作區中驗證相同網域的話,請與客服支援團隊聯絡。
設定應用程式
在成功驗證網域後,你可以透過設定 IdP 應用程式來進行單一登入設定。
首先,請點擊「設定單一登入(SSO)機制」的按鈕:

選取身分驗證提供者
你可以從原生支援 SAML 整合的最受歡迎 IdP 清單中選取。如果你在列表中看不到你的 IdP,或想使用 OIDC 連接,則可以選擇底部顯示的適當自訂連接按鈕:

建立/連接應用程式
你現在可以按照逐步設定精靈的指引,協助建立並將你的 IdP 應用程式與我們連接。根據你使用的 IdP,指示可能會略有不同,但整體設定保持不變:

請注意,建立步驟中提供的 URL 將專屬於貴組織:

重要:如果你選擇重設狀況良好的單一登入連接,這些 URL 值將會變更。當再次設定單一登入時,請確保在應用程式中相應地更新它們。
完成 URL 設定後,你可以繼續定義透過你的應用程式進行驗證的使用者屬性對應。
屬性對應
系統最終會根據你在單一登入(SSO)應用程式中所定義的屬性對應來定奪哪些 OpenAI 帳戶有經過驗證,並決定使用者會以什麼樣的形式出現在 OpenAI 的產品之中。我們目前的使用者模型支援三個屬性:
電子郵件地址(SAML 回應的必填項目,好藉以決定系統會存取哪一個帳戶)
名字 (可選,但建議填寫)
姓氏 (可選,但建議填寫)
注意:我們不支援解密 SAML 回應。請確保你未加密回應或判斷提示,以便我們能正確識別屬性。
根據你的 IdP,具體的屬性對應會有所不同。我們建議你遵循設定精靈中為你 IdP 所描述的精確對應。Okta 將會是:

如果你看到新使用者的電子郵件地址被設為其顯示名稱,請審閱你的屬性對應,並確認你沒有加密回應。
或者,如果要求新使用者輸入其姓名和生日,這可能表示我們無法從你的屬性回應中識別出正確的姓名值。
電子郵件變更
有時候,使用者的電子郵件地址可能會在你的 IdP 中更新,例如:
婚後的法律姓名變更
他們的公司在被收購後有了一個新的網域
等等。
如果在單一登入(SSO)SAML 回應之中,電子郵件地址所宣告的值會因此變更的話,在你成功完成單一登入(SSO)之後,系統便會存取另一位綁定了全新電子郵件地址的 OpenAI 使用者(如果該名使用者先前並不存在的話,系統屆時便會建立相應的使用者)。到時候還請另外發送加入組織或是工作區的邀請給該名使用者,你恕無法將邀請同時發送給原始的使用者與該名使用者。
主要電子郵件地址
在某些情況下,可能會有使用者擁有多個不同的電子郵件地址。這是大型公司中常見的情況,這些公司擁有分散的郵件系統,或是擁有不同學校的教育客戶,例如:
在這種情況下,我們建議確保你的 SAML 回應在其屬性中僅包含單一電子郵件地址,因為包含多個電子郵件地址可能會在我們嘗試將其繫結至新使用者或現有使用者時造成混淆。
此外,如果使用者有靜態的電子郵件地址 (例如 UPN),我們建議在屬性對應中使用此地址,以確保他們擁有穩定的 OpenAI 使用者帳戶,即使其他電子郵件地址發生變更也不會受到影響。
設定 IdP 中繼資料
在此設定階段,你有兩個分開的選項來定義 IdP 的中繼資料:動態設定和手動設定。
動態設定
這是推薦且最為直覺的選項。使用動態設定時,你只需提供與你應用程式相關聯的中繼資料 URL (現在會填入你先前設定的單一登入 URL 和實體 ID)。設定精靈會顯示你可以在 IdP 中找到此資訊的位置:

手動設定
顧名思義,手動設定需要更多操作。根據你的 IdP,你需要輸入相應的單一登入 URL 和 IdP 發行者,以及 x.509 憑證:

IdP 起始的登入
若你希望使用者能在其儀表板上按一下圖塊並自動驗證,則可以在設定程序中對你的應用程式設定 IdP 起始的驗證。雖然具體程序會因你的 IdP 而有所不同,但一般程序會使用提供的 URL,格式如下:
ChatGPT:https://chatgpt.com/auth/login?sso=true&connection=conn_0123abc
API 平台:https://platform.openai.com/enterprise/conn_01ABC02DEF/login
例如,Okta 會引導你逐步建立一個新的書籤應用程式,並使用此 URL:

Entra ID 將允許你在適當的表單中輸入提供的「登入 URL」:

重要:如果你選擇重設狀況良好的單一登入連接,則這些 URL 值將會變更。
這表示設定新連接時,你也需要相應地更新登入 URL,否則使用者將無法透過其圖塊進行驗證。
完成設定
一旦你設定了 IdP 的中繼資料後,可以按一下「繼續」來設定任何可選的書籤應用程式。最後一個必要設定步驟將在「測試單一登入」頁面上:

在按一下「繼續登入」後,精靈將嘗試測試你的新連線。如果一切都順利的話,你便能夠成功啟用單一登入(SSO)機制。你現在應該會發現此變更已反映在設定頁面:


你 IdP 群組中的使用者若是有相應的帳戶或是邀請,他們現在應該就可以開始透過單一登入(SSO)機制來登入帳戶:
在系統將其重新導向至相應的 IdP 之後,這些使用者可以前往 chatgpt.com 或是 platform.openai.com、輸入電子郵件,然後在我們將其重新導向至他們的 IdP 後進行驗證
他們可以使用你在設定期間中設定 (可選) 的書籤圖塊 URL
如果你發現使用者無法成功驗證,並且在還原變更時遇到困難,請聯絡支援團隊以獲得即時協助。
請記住,在 API 平台上啟用單一登入 (SSO) 會將網域驗證應用於所有使用該網域的使用者。這表示即使使用者不屬於您的 Enterprise 組織,仍然需要成為您 IdP 群組的成員才能存取他們的個人組織。
疑難排解登入
如果在啟用 SSO 後遇到登入問題,你可以審閱我們的常見問答集和疑難排解頁面,協助識別常見錯誤。如果你在那裡找不到充分的答案,請隨時聯絡支援團隊。
