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

OAuth および Connect REST API

Connect REST API は、OAuth を使用してアプリケーションを Salesforce に接続する前にセキュアに識別します。

OAuth は、ユーザデータへのアクセスにセキュア認証を許可するオープンプロトコルです。ユーザのユーザ名およびパスワードを渡す必要はありません。OAuth は、ソフトウェアアクセスのバレットキーと呼ばれることがよくあります。バレットキーを使用すると、自動車の特定の部分へのアクセスのみを許可できます。たとえば、バレットキーを使う場合、トランクやダッシュボードの小物入れなどを開けることはできません。

OAuth を使用すると、アプリケーションにログイン情報を保存せずにすみます。アプリケーションは、標準の Salesforce ページからログインするように求めます。これにより、アプリケーションにアクセストークンが返されます。アプリケーションは、このトークンを使用して Connect REST API Web サービスにアクセスできます。Oauth は、モバイルアプリケーションと Web ページで使用できます。

Connect REST API は OAuth 2.0 を使用します。

接続アプリケーション

Connect REST API を使用するには、組織に REST エントリポイントを作成します。Salesforce は、このエントリポイントを接続アプリケーション定義として定義します。

接続アプリケーション定義の作成例については、「ステップ 2: 認証を設定する」を参照してください。

接続アプリケーションの作成および使用時には、以下の点について考慮してください。

  • 次の表は、接続アプリケーション定義で使用されるラベルと OAuth 用語の対応を示しています。
    接続アプリケーションのラベル OAuth 用語 説明
    コンシューマ鍵 client_id Salesforce に対してアプリケーションを識別する一意の識別子。
    コンシューマの秘密 client_secret アプリケーションに関連付けられた秘密鍵。
    コールバック URL redirect_uri クライアントアプリケーションに関連付けられた URL。場合によっては、URL は、クライアントの Web ブラウザのリダイレクト先である実際の URL にする必要があります。その以外では、この URL は使用されません。ただし、クライアントアプリケーションとサーバ (接続アプリケーション定義) 間で値が一致する必要があります。http://mycomponent.myapp のように、アプリケーションを識別する値を使用することをお勧めします。
  • モバイルアプリケーションを開発している場合、次の値を [コールバック URL] (redirect_uri) に使用して、独自のアプリケーションサーバの設定を省略できます。
    1https://login.instance_name/services/oauth2/success
    Web アプリケーションの開発時は、この値を使用しないでください。
  • 接続アプリケーションがユーザの組織と同じ組織に存在していなくてもかまいません。作成する接続アプリケーションは、どの組織へのサインインにも使用できます。
  • 接続アプリケーション定義は、テスト用に 1 つ、本番用に 1 つのように複数個作成することをお勧めします。1 つのみを作成する場合、アプリケーションコードの場所を反映させて [コールバック URL] の値を変更する必要があります。さらに、iOS と Android など、異なるプラットフォームを開発する場合は、複数の接続アプリケーションを作成することをお勧めします。

OAuth の基礎

  • OAuth は、クライアントアプリケーションにリソース所有者が所有するリソースへのアクセス権を付与します。OAuth では、リソースとはセキュアな状態に保つ必要があるものを指します。Connect REST API の場合、API を介してアクセス���能なすべてのデータを保護対象として考慮します。
  • リソースへのアクセス権を付与するかどうかはリソース所有者次第です。このコンテキストでは、システム管理者 (ユーザと接続アプリケーションを管理する) とユーザ (サードパーティアプリケーションにログインしてアクセス権を付与する) を合わせたものがリソース所有者です。
  • アプリケーションがリソースにアクセスする場合、リソース所有者からの認証が要求されます。OAuth では、アプリケーションにリソースへのアクセス権を付与するさまざまな方法が提供されます。これらの方法は許可種別またはフローと呼ばれます。コンテキストに応じて適したフローは異なります。
  • クライアントアプリケーションのリソースへのアクセスが認証されると、そのアプリケーションにアクセストークンと更新トークンが送信されます。認証されたクライアントアプリケーションには、ID を証明するために、後続のすべての Web サービス要求にアクセストークンを含める必要があります。アクセストークンの有効期間は限られています。アクセストークンの期限が切れると、認証されたクライアントアプリケーションは、更新トークンを使用して新しいアクセストークンを取得するための特殊な要求を行うことができます。

OAuth フロー

ユーザは、Salesforce にアクセスする前に認証を受ける必要があります。OAuth には複数の認証フローがあります。各認証フローには複数のステップがあります。これらは、OAuth 標準および Salesforce へのアクセスを試行するアプリケーションの種別によって決まります。認証が成功すると、クライアントアプリケーションにはアクセストークンと更新トークンが送信されます。

Salesforce は、Connect REST API で使用するための次のフローをサポートしています。

さらに、アプリケーションのアクセスが認証された後に更新トークンを使用して新しいアクセストークンを取得できます。

デジタルエクスペリエンスでの OAuth の使用についての詳細は、Salesforce ヘルプを参照してください。

アクセス権の取り消し

ユーザにクライアントアプリケーションへのアクセス権が付与された後、そのアクセス権を取り消すには、[個人情報] ページの [接続アプリケーション] セクションで [取り消し] をクリックします。

その他のリソース

Connect REST API は、一部のインフラストラクチャを REST API と共有します。次の認証に関する情報は、Connect REST API にも該当します。

REST API の認証部分は、Connect REST API と共有されています。REST API をサポートする次のライブラリをお勧めします。

OAuth は広く使われている認証標準です。OAuth のクライアントライブラリを使用すると、クライアントアプリケーションの開発プロセスを円滑に進めることができます。次のクライアントプログラミングライブラリをお勧めします。