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

Force.com Canvas の使用

署名付き要求や OAuth 2.0 プロトコルなどの認証方式を必要とする外部アプリケーションに Salesforce コンソールを統合するには、Force.com Canvas を使用することをお勧めします。

Force.com CanvasSalesforce コンソールインテグレーションツールキットは似ています。これらはツールと JavaScript API のセットで、開発者がサードパーティシステムを Salesforce に追加するために使用できます。ただし、Force.com Canvas の利点の 1 つとして、認証方式を選択できるという点があります。詳細は、Force.com Canvas 開発者ガイド』を参照してください。

キャンバスアプリケーションをコンソールに表示するには、コンソールにカスタムコンソールコンポーネントとして追加する必要があります。「カスタムコンソールコンポーネントの追加」を参照してください。

メモ

キャンバスアプリケーションの開発時に Salesforce コンソールインテグレーションツールキットの機能を含めるには、次の操作を実行します。
  1. コンソールインテグレーションツールキット API を index.jsp に含めます。
  2. ドメインのホワイトリストがコンソールにある場合は、キャンバスアプリケーションのドメインをホワイトリストに追加します。「Salesforce コンソールのホワイトリストのドメイン」を参照してください。
  3. Sfdc.canvas.client.signedrequest() をコールし、コンソールインテグレーションツールキット API に必要な署名付き要求を保存します。たとえば、Force.com Canvas の認証方式が署名付き要求の場合は、次を実行します。
    1Sfdc.canvas.client.signedrequest('<%=signedRequest%>')

    Force.com Canvas の認証方式が OAuth の場合は、『Force.com Canvas 開発者ガイド』の「キャンバスアプリケーションでのコンテキストの取得」に記載されているように、コンテキストの取得に使用されるコールバック関数で次を実行します。

    1Sfdc.canvas.client.signedrequest(msg)
Salesforce コンソールインテグレーションツールキットおよびキャンバスアプリケーションを使用する場合は、次の点を考慮してください。
  • コンソールインテグレーションツールキット API スクリプトは署名付き要求によって異なるため、Sfdc.canvas.client.signedrequest() コールの実行後に追加する必要があります。スクリプトを動的に読み込むことをお勧めします。
  • キャンバスのサイドバーコンポーネントに関連付けられているレコードのエンティティ ID を取得するには、次を実行します。
    1// Get signedRequest
    2var signedRequest = Sfdc.canvas.client.signedrequest();
    3var parsedRequest = JSON.parse(signedRequest);
    4// get the entity Id that is associated with this canvas sidebar component.
    5var entityId = parsedRequest.context.environment.parameters.entityId;
  • OAuth の entityId を取得するには、次を実行します。
    1var entityId = msg.payload.environment.parameters.entityId;

    msg.payload の取得方法の例については、『Force.com Canvas 開発者ガイド』の「キャンバスアプリケーションでのコンテキストの取得」を参照してください。