Force.com での Salesforce インテグレーションの実行
Force.com AppExchange アプリケーションを作成して、Force.com プラットフォームで Salesforce のインテグレーションまたはその他のクライアントアプリケーションを実行できます。
- 外部サイトにユーザセッション ID と API サーバ URL を渡す WebLink を作成します。
1https://www.your_tool.com/test.jsp?sessionid={!API_Session_ID}&url={!API_Partner_Server_URL_80}https を使用して、セッション ID が検出できないようにします。
- 上述したページはセッション ID を取得し、それを使用して API にコールバックします。getUserInfo() を使用して、セッションや関連情報に関連する userID を返します。必要に応じて、User オブジェクトで retrieve を使用して、ユーザに関して必要な追加情報を取得します。
- UserId またはユーザ ID との相互参照を保持します。ユーザがタブをクリックすることで実行される WebLink、ページレイアウト上の WebLink を利用できます。
- Salesforce オンラインヘルプのトピック「配布用のアプリケーションの準備」の指示に従って、このアプリケーションをパッケージ化およびアップロードします。
API および OAuth を使った Salesforce データへのアクセス
Salesforce では、SOAP API 要求で OAuth バージョン 1.0.A および 2.0 がサポートされています。
OAuth バージョン 1.0.A では、サードパーティが Salesforce とのセッションの交渉を (定義済みの接続アプリケーションおよび OAuth プロトコルを使用して) 成功させ、有効なアクセストークンを入手すると、クライアントアプリケーションは API を使用して Salesforce データへのアクセスを要求できます。
接続アプリケーションを使用して Salesforce データを要求する開発者向けに、データアクセスの詳しいステップを次に説明します。
- コンシューマは、Salesforce に HTTPS POST 要求を行います。
- URL の形式は、https://login.salesforce.com/services/OAuth/type/api-version とします。
api-version - 有効な API バージョン。
- 認証ヘッダーには、次のパラメータが必要です。
- oauth_consumer_key
- oauth_token
- oauth_signature_method
- oauth_signature
- oauth_timestamp
- oauth_nonce
- oauth_version - (省略可能。含めるのであれば「1.0」)
- URL の形式は、https://login.salesforce.com/services/OAuth/type/api-version とします。
-
Salesforce は要求を検証し、有効なセッション ID をコンシューマに送信します。応答ヘッダーの内容は次のようになります。
1<response> 2 <metadataServerUrl>https://na1.salesforce.com/services/Soap/m/17.0/00D300000006qjK 3 </metadataServerUrl> 4 <sandbox>false</sandbox> 5 <serverUrl>https://na1.salesforce.com/services/Soap/u/17.0/00D300000006qjK 6 </serverUrl> 7 <sessionId>00D300000006qrN!AQoAQJTMzwTa67tGgQck1ng_xgMSuWVBpFwZ1xUq2kLjMYg6Zq 8 GTS8Ezu_C3w0pdT1DMyHiJgB6fbhhEPxKjGqlYnlROIUs1</sessionId> 9</response>
OAuth バージョン 2.0 を使用するコンシューマがアクセストークンを取得した後は、トークンを使用する方法は、使用する API によって異なります。
- REST API では、Authorization: Bearer Access_Token の形式で HTTP 認証ヘッダーを使用します。
- SOAP API では、アクセストークンは SessionHeader SOAP 認証ヘッダーに配置されます。
- ID URL では、HTTP 認証ヘッダー (REST API と同様) を使用するか、HTTP パラメータとして oauth_token を使用します。
詳細は、Salesforce オンラインヘルプの「Authenticating Apps with OAuth (OAuth によるアプリケーションの認証)」を参照してください。