使用 OAuth 設定與資料來源的連線 - Amazon SageMaker AI

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 OAuth 設定與資料來源的連線

以下章節說明您必須採取的步驟,以便設定連接至 SageMaker Canvas 資料來源的 OAuth 連線。OAuth 是一種常見的驗證平台,用於在不共享密碼的情況下授予資源存取許可。您可以使用 OAuth 從 Canvas 快速連接到資料,並將資料匯入以構建模型。Canvas 目前支援 Snowflake 與 Salesforce Data Cloud。

注意

您僅能針對每個資料來源建立一個 OAuth 連線。

針對 Salesforce Data Cloud 設定 OAuth

若要針對 Salesforce Data Cloud 設定 OAuth,請遵循下列一般步驟:

  1. 登入至 Salesforce Data Cloud。

  2. 在 Salesforce Data Cloud 中建立新的應用程式連線,然後執行下列動作:

    1. 啟用 OAuth 設定。

    2. 當系統提示您輸入回呼 URL (或存取資料的資源 URL) 時,請指定 Canvas 應用程式的 URL。Canvas 應用程式 URL 遵循以下格式:https://<domain-id>.studio.<region>.sagemaker.aws/canvas/default

    3. 複製消費者金鑰和機密。

    4. 複製您的授權網址和權杖 URL。

如需有關在 Salesforce Data Cloud 中執行前面任務的詳細說明,請參閱 Data Wrangler 說明文件中的 從 Salesforce 資料雲端匯入資料。,有關從 Salesforce Data Cloud 端匯入資料的說明文件。

從 Salesforce Data Cloud 啟用存取並取得連線資訊後,您必須建立AWS Secrets Manager秘密來存放資訊,並將其新增至 Amazon SageMaker AI 網域或使用者設定檔。請注意,您可以將秘密新增至網域和使用者設定檔,但 Canvas 會先在使用者設定檔中尋找秘密。

若要將秘密新增至您的網域或使用者設定檔,請執行下列動作:

  1. 前往 Amazon SageMaker AI 主控台

  2. 在導覽窗格中選擇網域

  3. 網域清單中,選擇您的網域。

    1. 若要將秘密新增至網域,請執行下列動作:

      1. 選擇網域。

      2. 網域設定頁面上,選擇網域設定索引標籤。

      3. 選擇編輯

    2. 若要將機密新增至您的使用者設定檔,請執行下列動作:

      1. 選擇使用者的網域。

      2. 網域設定頁面上,選擇使用者設定檔。

      3. 使用者詳細資訊頁面選擇編輯

  4. 在導覽窗格中,選擇 Canvas 設定

  5. 針對 OAuth 設定,請選擇新增 OAuth 組態

  6. 針對資料來源,請選取 Salesforce Data Cloud

  7. 針對機密設定,選取建立新的機密。或者,如果您已使用登入資料建立 AWS Secrets Manager 秘密,請輸入秘密的 ARN。若要建立新的機密,請執行下列動作:

    1. 針對身分提供者,選取 SALESFORCE

    2. 針對用戶端 ID用戶端機密授權 URL權杖 URL,請輸入您在上一個程序中從 Salesforce Data Cloud 收集的所有資訊。

  8. 儲存您的網域或使用者設定檔設定。

您現在應該可以從 Canvas 建立與 Salesforce Data Cloud 的連線以取用資料。

為 Snowflake 設定 OAuth

若要設定 Snowflake 的驗證,Canvas 支援您可以使用的身分提供者,而不必讓使用者直接在 Canvas 中輸入憑證。

以下是 Canvas 支援的身分提供者的 Snowflake 文件連結:

下列步驟說明您必須進行的一般程序:如需有關執行這些步驟的更多詳細說明,您可以參閱 Data Wrangler 說明文件中的設定 Snowflake OAuth 存取權區段,獲得有關從 Snowflake 匯入資料指示。

若要設定 Snowflake 的 OAuth,請執行下列動作:

  1. 將 Canvas 註冊為身分提供者的應用程式。此動作需要指定一個重新導向至 Canvas 的 URL,且應該為以下格式:https://<domain-id>.studio.<region>.sagemaker.aws/canvas/default

  2. 在身分提供者中建立建一個伺服器或 API,其會把 OAuth 權杖發送到 Canvas,以便 Canvas 可以存取 Snowflake。在設定伺服器時請使用授權碼並重新整理權杖授予類型、指定存取權杖生命週期,並設定重新整理權杖政策。此外,在 Snowflake 的外部 OAuth 安全性整合中啟用 external_oauth_any_role_mode

  3. 從身分提供者獲得以下資訊:權杖 URL、授權 URL、用戶端 ID、用戶端機密。針對 Azure AD,也會擷取 OAuth 範圍憑證。

  4. 將上一個步驟中擷取的資訊存放在 AWS Secrets Manager 秘密中。

    1. 針對 Okta 和 Ping Federate,機密格式應該如下所示:

      {"token_url":"https://identityprovider.com/oauth2/example-portion-of-URL-path/v2/token", "client_id":"example-client-id", "client_secret":"example-client-secret", "identity_provider":"OKTA"|"PING_FEDERATE", "authorization_url":"https://identityprovider.com/oauth2/example-portion-of-URL-path/v2/authorize"}
    2. 針對 Azure AD,機密也應該包含 OAuth 範圍憑證為 datasource_oauth_scope 欄位。

設定身分提供者和秘密之後,您必須建立AWS Secrets Manager秘密來存放資訊,並將其新增至 Amazon SageMaker AI 網域或使用者設定檔。請注意,您可以將秘密新增至網域和使用者設定檔,但 Canvas 會先在使用者設定檔中尋找秘密。

若要將秘密新增至您的網域或使用者設定檔,請執行下列動作:

  1. 前往 Amazon SageMaker AI 主控台

  2. 在導覽窗格中選擇網域

  3. 網域清單中,選擇您的網域。

    1. 若要將秘密新增至網域,請執行下列動作:

      1. 選擇網域。

      2. 網域設定頁面上,選擇網域設定索引標籤。

      3. 選擇編輯

    2. 若要將機密新增至您的使用者設定檔,請執行下列動作:

      1. 選擇使用者的網域。

      2. 網域設定頁面上,選擇使用者設定檔。

      3. 使用者詳細資訊頁面選擇編輯

  4. 在導覽窗格中,選擇 Canvas 設定

  5. 針對 OAuth 設定,請選擇新增 OAuth 組態

  6. 針對資料來源,請選取 Snowflake

  7. 針對機密設定,選取建立新的機密。或者,如果您已使用登入資料建立 AWS Secrets Manager 秘密,請輸入秘密的 ARN。若要建立新機密,請執行下列動作:

    1. 針對身分提供者,選取 SNOWFLAKE

    2. 對於用戶端 ID用戶端機密授權 URL權杖 URL,請輸入您在上一個程序中從身分提供者收集的所有資訊。

  8. 儲存您的網域或使用者設定檔設定。

您現在應該可以從 Canvas 建立與 Snowflake 的連線以取用資料。