OAuth を使用してデータソースへの接続を設定する - Amazon SageMaker

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

OAuth を使用してデータソースへの接続を設定する

次のセクションでは、Canvas からデータソースへの OAuth 接続を設定するために必要な手順について説明します。 SageMaker OAuth は、パスワードを共有せずにリソースへのアクセスを許可するための一般的な認証プラットフォームです。OAuth を使用すると、Canvas からデータにすばやく接続し、モデルを構築するためにデータをインポートできます。Canvas は現在、Snowflake および Salesforce Data Cloud 向けの OAuth をサポートしています。

注記

各データソースで確立できる OAuth 接続は 1 つのみです。

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 とトークン URL をコピーします。

Salesforce Data Cloud で上記タスクを実行する方法の詳細については、Salesforce Data Cloud からのデータのインポートに関する Data Wrangler のドキュメントの「Salesforce データクラウドからデータをインポートする」を参照してください。

Salesforce Data Cloud からのアクセスを有効にして接続情報を取得したら、AWS Secrets Manager情報を保存するシークレットを作成し、Amazon SageMaker ドメインまたはユーザープロファイルに追加する必要があります。ドメインとユーザプロファイルの両方にシークレットを追加できますが、Canvas はまずユーザプロファイル内のシークレットを検索することに注意してください。

ドメインまたはユーザープロファイルにシークレットを追加するには、次の操作を行います。

  1. Amazon SageMaker コンソールにアクセスしてください

  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. [ID プロバイダー] で、[SALESFORCE] を選択します。

    2. [クライアント ID][クライアントシークレット][認証 URL]、および [トークン URL] に、前の手順で Salesforce Data Cloud から入手した情報をすべて入力します。

  8. ドメインまたはユーザープロファイルの設定を保存します。

これで、Canvas から Salesforce Data Cloud のデータへの接続を作成できました。

Snowflake に OAuth を設定する

Snowflake の認証を設定するために、Canvas はユーザーが Canvas に認証情報を直接入力する代わりに使用できる ID プロバイダーをサポートしています。

Canvas がサポートする ID プロバイダーに関する Snowflake ドキュメントへのリンクは次のとおりです。

一般的な手順を以下に示します。これらの手順を実行する方法の詳細については、Snowflake からのデータのインポートに関する Data Wrangler のドキュメントの「Snowflake OAuth アクセスのセットアップ」セクションを参照してください。

Snowflake 用の OAuth を設定するには、次の手順に従います。

  1. ID プロバイダーを含むアプリケーションとして Canvas を登録します。登録するには Canvas へのリダイレクト URL を指定する必要があります。このリダイレクト URL は https://<domain-id>.studio.<region>.sagemaker.aws/canvas/default の形式に従う必要があります。

  2. ID プロバイダー内で、Canvas に OAuth トークンを送信するサーバーまたは API を作成して、Canvas が Snowflake にアクセスできるようにします。サーバーをセットアップする際は、認証コードと更新トークンの付与タイプを使用し、アクセストークンの有効期間を指定して、更新トークンポリシーを設定します。また、Snowflake の外部 OAuth セキュリティ統合で external_oauth_any_role_mode を有効にします。

  3. ID プロバイダーから、トークン 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 の場合、シークレットには datasource_oauth_scope フィールドとして OAuth スコープ認証情報も含める必要があります。

ID プロバイダーとシークレットを設定したら、AWS Secrets Manager情報を保存するシークレットを作成し、Amazon SageMaker ドメインまたはユーザープロファイルに追加する必要があります。ドメインとユーザープロファイルの両方にシークレットを追加できますが、Canvasは最初にユーザープロファイル内のシークレットを検索することに注意してください。

ドメインまたはユーザープロファイルにシークレットを追加するには、次の操作を行います。

  1. Amazon SageMaker コンソールにアクセスしてください

  2. ナビゲーションペインでドメインを選択します

  3. ドメインのリストから、ドメインを選択します。

    1. ドメインにシークレットを追加する場合は、次の操作を行います。

      1. ドメインを選択します。

      2. ドメイン設定ページでドメイン設定タブを選択します

      3. [編集] を選択します。

    2. ユーザープロファイルにシークレットを追加するには、次の手順に従います。

      1. ユーザーのドメインを選択します。

      2. ドメイン設定ページで、ユーザープロファイルを選択します。

      3. [ユーザーの詳細] ページで、[編集] を選択します。

  4. ナビゲーションペインで、[Canvas の設定] を選択します。

  5. [OAuth 設定] で、[OAuth 設定を追加] を選択します。

  6. [データソース] で、[Snowflake] を選択します。

  7. [シークレット設定] で、[新しいシークレットを作成] を選択します。または、 AWS Secrets Manager 認証情報を使用してシークレットをすでに作成している場合は、シークレットの ARN を入力します。新しいシークレットを作成するには、次の手順に従います。

    1. [ID プロバイダー] で、[SNOWFLAKE] を選択します。

    2. [クライアント ID][クライアントシークレット][認証 URL]、および [トークン URL] に、前の手順で ID プロバイダーから入手した情報をすべて入力します。

  8. ドメインまたはユーザープロファイルの設定を保存します。

これで、Canvas から Snowflake のデータへの接続を作成できました。