Skip to main content
本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。

如果啟用單一登入、請使用API(Azure)

貢獻者

如果您有 已設定並啟用單一登入(SSO) 您可以使用Azure做為SSO供應商、使用兩個範例指令碼來取得適用於Grid Management API或租戶管理API的驗證權杖。

如果啟用Azure單一登入、請登入API

如果您使用Azure做為SSO身分識別供應商、則適用這些指示

您需要的產品
  • 您知道屬於StorageGRID 某個支援對象群組的聯盟使用者的SSO電子郵件地址和密碼。

  • 如果您想要存取租戶管理API、就知道租戶帳戶ID。

關於這項工作

若要取得驗證權杖、您可以使用下列範例指令碼:

  • "storagegRide-ssoauth-azure.py" Python指令碼

  • "storagegRide-ssoauth-azure.js" Node.js指令碼

這兩個指令碼都位於StorageGRID 支援Red Hat Enterprise Linux或CentOS的版本/rpmss目錄(適用於Ubuntu或DEBIANS的版本/debs目錄、以及適用於VMware的版本/vSphere目錄)。

若要寫入您自己與Azure的API整合、請參閱「storagegRide-ssoauth-azure.py」指令碼。Python指令碼會StorageGRID 直接提出兩項要求(先取得SAMLRequest、之後取得授權權杖)、也會呼叫Node.js指令碼與Azure互動、以執行SSO作業。

SSO作業可以使用一系列API要求執行、但這樣做並不直接。Puppeteer Node.js模組可用來掃描Azure SSO介面。

如果您遇到URL編碼問題、可能會看到錯誤:「Unsupported SAML version(不支援的SAML版本)」。

步驟
  1. 安裝所需的相依性、如下所示:

    1. 安裝Node.js(請參閱 "https://nodejs.org/en/download/")。

    2. 安裝所需的Node.js模組(puppeteer和jsdom):

      "npPM install -g <module>

  2. 將Python指令碼傳遞給Python解譯器以執行指令碼。

    然後Python指令碼會呼叫對應的Node.js指令碼、以執行Azure SSO互動。

  3. 出現提示時、請輸入下列引數的值(或使用參數傳入):

    • 用於登入Azure的SSO電子郵件地址

    • 解決這個StorageGRID 問題

    • 租戶帳戶ID(如果您要存取租戶管理API)

  4. 出現提示時、請輸入密碼、並在需要時準備好提供MFA授權給Azure。

    提示輸入密碼和MFA
    註 指令碼假設MFA是使用Microsoft驗證者完成。您可能需要修改指令碼、以支援其他形式的MFA(例如輸入透過文字訊息接收的程式碼)。

    輸出中提供了驗證權杖。StorageGRID您現在可以將權杖用於其他要求、類似於未使用SSO時使用API的方式。