この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

Tableau CRM REST API 認証

Salesforce では、OAuth プロトコルを使用して、アプリケーションユーザがユーザ名やパスワードのログイン情報を明らかにすることなくセキュアにデータにアクセスできるようにします。

次のセクションでは、認証の概要と、認証の設定および OAuth を使用して Tableau CRM REST API に接続する手順について説明します。

認証について

Tableau CRM REST API を使用して API コールを行う前に、OAuth 2.0 を使用してアプリケーションユーザを認証する必要があります。そのためには、次の手順を実行する必要があります。

  • Salesforce 組織内にアプリケーションを接続アプリケーションとして設定します。
  • 接続アプリケーションが使用できるように正しい Salesforce OAuth エンドポイントを決定します。
  • 複数の異なる OAuth 2.0 認証フローのいずれかを介して接続アプリケーションユーザを認証します。OAuth 認証フローには、アプリケーションと Salesforce の間の認証プロセスを調整するために使用する一連の手順が定義されています。次の OAuth フローがサポートされています。

認証の設定

Salesforce 組織で接続アプリケーションを作成し、OAuth を有効にします。クライアントアプリケーションは、接続アプリケーションを使用して Salesforce に接続します。

  1. Salesforce 組織で、[設定] から [作成] | [アプリケーション] をクリックし、[接続アプリケーション] セクションで [新規] をクリックして新しい接続アプリケーションを作成します。
  2. クライアントは、接続アプリケーションが組織で定義されていなくても、接続アプリケーションを使用して組織にサインインできます。
  3. 接続アプリケーション名を入力します。
  4. [OAuth 設定の有効化] を選択します。
  5. [コールバック URL] を入力します。セキュアである必要があるため、http:// ではなく https:// を使用します。
  6. OAuth の範囲を入力します。接続アプリケーションでアクセスを許可する他の範囲に加え、Access and manage your data (api) を選択します。
  7. [保存] をクリックします。
  8. Consumer Key が作成され、表示されます。また、Consumer Secret が作成されます (表示するにはリンクをクリックします)。

OAuth を使用した Tableau CRM REST API への接続

OAuth を使用して Salesforce に接続し、アクセストークンを取得します。アクセストークンを要求で Tableau CRM API に渡します。

作成した接続アプリケーションで使用される用語と、例で使用される OAuth のプロパティの対応付けを次の表に示します。OAuth 2.0 仕様では、「コンシューマ」ではなく「クライアント」という用語を使用します。

接続アプリケーションのアプリケーションラベル

例の値

コンシューマ鍵 client_id Key
コンシューマの秘密 client_secret

この手順では、ユーザ名パスワード OAuth 認証フローを使用します。ユーザ名パスワード認証フローでは、ユーザのログイン情報をやりとりする必要があります。この認証フローは、必要な場合にのみ使用してください。更新トークンは発行されません。

メモ

Salesforce への要求を行うには、次の例に組織の値を代入します。

  1. アクセストークンを生成します。

    次の cURL コマンドはアクセストークンを生成します。

    1curl --form 
    2client_id=3MVG9PhR6g6B7ps4xDycwGrI4PvjVZvK9 
    3    --form client_secret=8870355475032095511
    4    --form grant_type=password 
    5    --form username=admin@seattleapps.com 
    6    --form password=1Lsfdc!
    7https://login.salesforce.com/services/oauth2/token
    複数行コマンドを Mac または Linux コマンドラインインターフェースに貼り付ける場合、各行をバックスラッシュ (\) でエスケープしてコマンドが次の行に続くことを示します。エスケープされた行は次のようになります。
    1curl --form client_id=3MVG9PhR6g6B7ps4xDycwGrI4PvjVZvK9 \
    複数行コマンドを Windows コマンドプロンプトに貼り付ける場合、各行をキャレット (^) でエスケープします。エスケープされた行は次のようになります。
    1curl --form client_id=3MVG9PhR6g6B7ps4xDycwGrI4PvjVZvK9 ^

    メモ

    応答には、次のようにサーバインスタンスとアクセストークンが含まれます。

    1{
    2"id":"https://login.salesforce.com/id/00Di0000000hT9uEAE/005i00000022uIbAAI",
    3"issued_at":"1302907727777",
    4"instance_url":"https://yourInstance.salesforce.com",
    5"signature":"5jcevY5fUai0lWntuSxkwBzWcvRjd01RCOkIBZpyGv0=",
    6"access_token":"00DD0000000FJ6T!AQkAQPde_DMF2vGzddfZmBRS95GojDbtA
    7
    8rKkgukAgZP0OVFYY5KkAqhLw9ejeKIlpJ3FgwGAWeRlBiWRt8mfXEuAZGbZNosk"
    9}
  2. Tableau CRM REST API リソースを要求するには、返された instance_url をサーバインスタンスとして使用します。返された access_token を認証要求ヘッダーでべアラートークンとして渡します。
    1curl -X GET https://yourInstance.salesforce.com/services/data/v42.0/wave
    2  -H 'Authorization: Bearer 00DD0000000FJ6T!AQkAQPde_DMF2vGzddfZmBRS95Goj
    3  DbtArKkgukAgZP0OVFYY5KkAqhLw9ejeKIlpJ3FgwGAWeRlBiWRt8mfXEuAZGbZNosk'

プロパティ

例の値

サーバインスタンス yourInstance.salesforce.com
client_id 3MVG9PhR6g6B7ps4xDycwGrI4PvjVZvK9
client_secret 8870355475032095511
grant_type password

grant_type の値は使用する OAuth 認証フローに応じて異なります

username admin@seattleapps.com
password 1Lsfdc!