

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

# 使用 OAuth 設定與資料來源的連線
<a name="canvas-setting-up-oauth"></a>

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

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

## 針對 Salesforce Data Cloud 設定 OAuth
<a name="canvas-setting-up-oauth-salesforce"></a>

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

1. 登入至 Salesforce Data Cloud。

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

   1. 啟用 OAuth 設定。

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

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

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

如需有關在 Salesforce Data Cloud 中執行前面任務的詳細說明，請參閱 Data Wrangler 說明文件中的 [從 Salesforce 資料雲端匯入資料。](data-wrangler-import.md#data-wrangler-import-salesforce-data-cloud)，有關從 Salesforce Data Cloud 端匯入資料的說明文件。

從 Salesforce Data Cloud 啟用存取並取得連線資訊後，您必須建立 [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) 秘密來儲存資訊，並將其新增至 Amazon SageMaker AI 網域或使用者設定檔。請注意，您可以在網域和使用者設定檔中新增密碼，但 Canvas 會先在使用者設定檔中尋找密碼。

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

1. 前往 [Amazon SageMaker AI 主控台](https://console.aws.amazon.com/sagemaker)。

1. 在導覽窗格中選擇**網域**。

1. 從**網域**清單中選擇您的網域。

   1. 如果您要將機密新增至網域，請執行下列動作：

      1. 選擇網域。

      1. 在**網域設定**頁面上，選擇**網域設定**索引標籤。

      1. 選擇**編輯**。

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

      1. 選擇使用者的網域。

      1. 在**網域設定**頁面上，選擇使用者設定檔。

      1. 在**使用者詳細資訊**頁面選擇**編輯**。

1. 在導覽窗格中，選擇** Canvas 設定**。

1. 針對 **OAuth 設定**，請選擇**新增 OAuth 組態**。

1. 針對**資料來源**，請選取 **Salesforce Data Cloud**。

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

   1. 針對**身分提供者**，選取 **SALESFORCE**。

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

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

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

## 為 Snowflake 設定 OAuth
<a name="canvas-setting-up-oauth-snowflake"></a>

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

以下是 Canvas 支援的身分提供者的 Snowflake 文件連結：
+ [Azure AD](https://docs.snowflake.com/en/user-guide/oauth-azure.html)
+ [Okta](https://docs.snowflake.com/en/user-guide/oauth-okta.html)
+ [Ping Federate](https://docs.snowflake.com/en/user-guide/oauth-pingfed.html)

下列步驟說明您必須進行的一般程序：如需有關執行這些步驟的更多詳細說明，您可以參閱 Data Wrangler 說明文件中的[設定 Snowflake OAuth 存取權](data-wrangler-import.md#data-wrangler-snowflake-oauth-setup)區段，獲得有關從 Snowflake 匯入資料指示。

若要設定 Snowflake 的 OAuth，請執行下列動作：

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

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

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

1. 將上一個步驟中擷取的資訊存放在 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"}
      ```

   1. 針對 Azure AD，機密也應該包含 OAuth 範圍憑證為 `datasource_oauth_scope` 欄位。

設定身分提供者和秘密後，您必須建立 [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) 秘密來儲存資訊，並將其新增至 Amazon SageMaker AI 網域或使用者設定檔。請注意，您可以在網域和使用者設定檔中新增密碼，但 Canvas 會先在使用者設定檔中尋找密碼。

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

1. 前往 [Amazon SageMaker AI 主控台](https://console.aws.amazon.com/sagemaker)。

1. 在導覽窗格中選擇**網域**。

1. 從**網域**清單中選擇您的網域。

   1. 如果您要將機密新增至網域，請執行下列動作：

      1. 選擇網域。

      1. 在**網域設定**頁面上，選擇**網域設定**索引標籤。

      1. 選擇**編輯**。

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

      1. 選擇使用者的網域。

      1. 在**網域設定**頁面上，選擇使用者設定檔。

      1. 在**使用者詳細資訊**頁面選擇**編輯**。

1. 在導覽窗格中，選擇** Canvas 設定**。

1. 針對 **OAuth 設定**，請選擇**新增 OAuth 組態**。

1. 針對**資料來源**，請選取** Snowflake**。

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

   1. 針對**身分提供者**，選取 **SNOWFLAKE**。

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

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

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