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

ステップ 3: OAuth を使用して Chatter REST API に接続する

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

「ステップ 2: 認証を設定する」を完了し、接続アプリケーションを作成してからこのタスクを開始します。

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

このクイックスタートでは、ユーザ名パスワード OAuth 認証フローを使用します。ユーザ名パスワード認証フローでは、ユーザのログイン情報をやりとりする必要があります。この認証フローは、このクイックスタートのように必要な場合にのみ使用してください。更新トークンは発行されません。さらに、Salesforce コミュニティではユーザ名パスワード認証フローはサポートされていません。このクイックスタートでは、コミュニティ URL への要求は行わないでください。

メモ

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

  1. アクセストークンを生成します。
    次の cURL コマンドはアクセストークンを生成します。
    1curl -v https://login.salesforce.com/services/oauth2/token -d "grant_type=password" -d "client_id=3MVG9PhR6g6B7ps4xDycwGrI4PvjVZvK9" -d "client_secret=8870355475032095511" -d "username=admin@seattleapps.com" -d "password=test1234mB1riuD3n"

    メモ

    応答には、次のようにサーバインスタンスとアクセストークンが含まれます。
    1{
    2"access_token":"00Dd0000000d2Iy!AQgAQLwpOxN4DhZO2qB8PCbD8VU1T35znzeDeCm....",
    3"instance_url":"https://instance_name.my.salesforce.com",
    4"id":"https://login.salesforce.com/id/00Dd000000XXXXXXX/005d000000XXXXX",
    5"token_type":"Bearer",
    6"issued_at":"1486507938095",
    7"signature":"uEY/R99P/uqgq0GYNQKcvKc9LqICOMf91NvwI2my4eI="
    8}
  2. Chatter REST API リソースを要求するには、返された instance_url をサーバインスタンスとして使用します。返された access_tokenAuthorization 要求ヘッダーで Bearer トークンとして渡します。
    1curl -X GET https://instance_name/services/data/v41.0/chatter/users/me 
    2     -H 'Authorization: Bearer 00DD0000000FJ6T!AQkAQPde_DMF2vGzddfZmBRS95Goj
    3     DbtArKkgukAgZP0OVFYY5KkAqhLw9ejeKIlpJ3FgwGAWeRlBiWRt8mfXEuAZGbZNosk'
この例では次の値を使用しています。
プロパティ
client_id 3MVG9PhR6g6B7ps4xDycwGrI4PvjVZvK9
client_secret 8870355475032095511
grant_type password

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

ユーザのセキュリティトークンをパスワードに追加します。セキュリティトークンは Salesforce から自動生成されるキーです。たとえば、ユーザのパスワードが mypassword で、セキュリティトークンが XXXXXXXXXX の場合は、このパラメータには、値 mypasswordXXXXXXXXXX を指定する必要があります。

username admin@seattleapps.com
password test1234mB1riuD3n