Loading
Salesforce から送信されるメールは、承認済ドメインからのみとなります続きを読む
ユーザーの識別およびアクセス権の管理
目次
絞り込み条件を選択

          結果がありません
          結果がありません
          検索のヒントをいくつかご紹介します

          キーワードの入力ミスがないか確認する。
          より一般的な検索語を使用する。
          絞り込み条件を減らして、検索範囲を広げる。

          Salesforce ヘルプ全体を検索
          OAuth トークンおよび範囲

          OAuth トークンおよび範囲

          OAuth トークンは保護されたリソースへのアクセスを承認します。認証後、接続アプリケーションはクライアントの代わりにトークンを受信します。範囲は、接続アプリケーションがアクセスできる保護されたリソースの種別をさらに定義します。接続アプリケーションの作成時に範囲を割り当てると、認証フロー中に OAuth トークンに範囲が含まれます。

          必要なエディション

          使用可能なインターフェース: Salesforce Classic および Lightning Experience の両方
          使用可能なエディション: すべてのエディション

          OAuth トークン

          認証フローによっては、認証サーバーは次の OAuth トークンをクライアントに提供できます。

          OAuth トークン 説明
          認証コード 認証サーバーは、認証コード (有効期間が短いトークン) を作成し、認証の成功後にクライアントに渡します。クライアントは、認証コードを認証サーバーに送信してアクセストークンと、必要に応じて更新トークンを取得します。
          アクセストークン

          クライアントが認証されると、Salesforce はクライアントにアクセストークンを送信します。クライアントは、アクセストークンをリソースサーバーに渡して、保護されたリソースへのアクセスを要求します。リソースサーバーは、クライアントにアクセス権を付与する前にアクセストークンと範囲の形式の追加権限を検証します。

          アクセストークンの有効期間は認証コードよりも長く、通常は数分~数時間です。アクセストークンの有効期限が切れると、アクセストークンの使用が失敗します。クライアントは、更新トークンを使用するか、認証フローを再開始して、新しいアクセストークンを取得する必要があります。

          クライアントは、Transport Layer Security (TLS または SSL) などのプロトコルで傍受からアクセストークンを保護できる必要があります。

          アクセストークンを使用する OAuth 2.0 認証フローを実装するには、クライアントを Salesforce API と統合する接続アプリケーションに web 範囲を割り当てます。

          アクセストークンを受信したら、クライアントは次のいずれかの方法を使用し、アクセスを要求できます。

          • REST API では、Authorization: Bearer Access_Token という形式の HTTP 認証ヘッダーを使用します。
          • SOAP API では、SessionHeader SOAP 認証ヘッダーを使用します。アクセストークンはヘッダーに配置されます。
          • ID URL では、HTTP 認証ヘッダー (REST API と同様) を使用するか、HTTP パラメーター oauth_token を使用します。

          接続アプリケーション (クライアント) とユーザーの組み合わせごとに一意のアクセストークンが付与されます。ただし、Salesforce では、次の条件下で異なるサービスプロバイダーに同じアクセストークンを発行できます。

          • 複数のサービスプロバイダーに対して 1 つの接続アプリケーションを設定している。
          • ユーザーに 1 つのサービスプロバイダーとの有効なセッションがある。その後、ユーザーは両方のサービスプロバイダーに対して設定された同じ接続アプリケーションを使用して別のサービスプロバイダーにログインします。

          異なるサービスプロバイダーが一意のアクセストークンを受信できるようにするには、サービスプロバイダーごとに個別の接続アプリケーションを作成します。

          更新トークン

          クライアントは更新トークンを繰り返し使用して、リソースサーバーにアクセスできます。更新トークンが期限切れになったり、クライアント以外でユーザーによって取り消されたりすると、クライアントは、(通常は認証フローを最初から実装して) 新しいアクセストークンを要求します。

          更新トークンは有効期間を無限にして、システム管理者が設定した期間、または明示的に取り消されるまで存続させることができます。クライアントは更新トークンを保存して使用し、新しいアクセストークンを取得します。セキュリティ上の理由により、クライアントは不正なアクセスに対して更新トークンを保護する必要があります。

          要求に refresh_token または offline_access 範囲が含まれている場合、OAuth 2.0 ユーザーエージェントフローと OAuth 2.0 Web サーバーフローで更新トークンを要求できます。

          ID トークン

          ID トークンは、ユーザーの一意の識別子、トークンがいつ発行されたかなど、認証済みユーザーの属性が含まれる署名済みデータ構造です。ID トークンによって要求元のクライアントアプリケーションも識別されます。Salesforce は、OpenID Connect の仕様に従って、OAuth 要求に ID トークンで応答できます。

          要求に次のパラメーターが含まれている場合、OAuth 2.0 ユーザーエージェントフローと OAuth 2.0 Web サーバーフローの両方で署名付き ID トークンを要求できます。返されるトークンは、JSON Web トークン (JWT) です。

          • ユーザーエージェントフローには、値が token id_tokenresponse_type パラメーター、openid 範囲、および nonce パラメーターが含まれている必要があります。
          • Web サーバーフローには、値が coderesponse_type パラメーターおよび openid 範囲が含まれている必要があります。nonce パラメーターは省略可能です。

          ユーザーエージェントフローを使用した ID トークンの要求の例を次に示します。

          https://MyDomainname.my.salesforce.com/services/oauth2/authorize?response_type=token+id_token
          &redirect_uri=https://MyDomainName.my.salesforce.com/services/oauth2/success
          &client_id=3MVG9lKcPoNINVBIPJjdw1J9LLJbP_pqwoJYyuisjQhr_LLurNDv7AgQvDTZwCoZuD_
          3Oxug0sU3_WrBPd_Ax6Mcnlg5HSnLGQ&scope=openid&nonce=somevalue

          公開されている公開鍵を使用して、応答の署名が有効な Salesforce 署名であるかどうかを確認します。MyDomainName.my.salesforce.com/id/keys では、署名時に使用した公開鍵に関する JSON 形式の情報が応答に含まれます。リリースバージョンを指定する正しい kid 値の鍵を使用して、署名を検証します。

          初期アクセストークン Salesforce は動的クライアント登録要求フローの承認に初期アクセストークンを必要とします。OAuth 2.0 接続アプリケーションを設定したら、初期アクセストークンを生成します。
          アセットトークン 効率的にトークンを交換したり、デバイスと Service Cloud アセットデータを自動的にリンクするために、クライアントは OAuth 2.0 デバイスフローを実装できます。このフローでは、クライアントはアクセストークンおよびアクタートークンをアセットトークンと交換できます。このフローは、アセットトークンの発行とアセットの登録を組み合わせます。
          削除トークン 更新トークンおよび関連付けられたアクセストークンを取り消すために使用できるトークン。このトークンは、OauthToken オブジェクトの DeleteToken 項目で表されます。このトークンを使用するには、OAuth 2.0 取り消しエンドポイントへの要求にこのトークンを含めるか、Apex を使用します。「不透明 OAuth トークンの取り消し」を参照してください。

          OAuth 範囲

          これらの OAuth 範囲を接続アプリケーションに割り当てて、クライアントがアクセスできる保護されたリソースの種別を定義できます。

          説明
          Customer Data Platform データに対する ANSI SQL クエリを実行 (cdp_query_api) ユーザーの代わりに Data Cloud データの ANSI SQL クエリを許可します。
          Pardot サービスを管理 (pardot_api) ユーザーの代理として Marketing Cloud Account Engagement API サービスへのアクセスを許可します。Account Engagement でアクセス可能なすべてのサービスを管理します。(Pardot は Marketing Cloud Account Engagement という名前に変更されました。)
          Customer Data Platform プロファイルデータを管理 (cdp_profile_api) Data Cloud REST API データへのアクセスを許可します。この範囲を使用して、プロファイルレコードを管理します。
          Connect REST API リソースにアクセス (chatter_api) ユーザーの代わりに一部の Connect REST API リソースへのアクセスを許可します。すべての Connect REST API リソースへのアクセスを許可するには、api 範囲を使用します。
          Customer Data Platform の取り込み API データを管理 (cdp_ingest_api) Data Cloud 取り込み API データへのアクセスを許可します。この範囲を使用して、Data Cloud で外部データセットをアップロードおよび管理します。この範囲は JSON Web トークン (JWT) でパッケージ化されます。
          Analytics REST API Charts Geodata リソースにアクセス (eclair_api) Analytics REST API Charts Geodata リソースへのアクセスを許可します。
          Analytics REST API リソースにアクセス (wave_api) Analytics REST API リソースへのアクセスを許可します。
          API を使用してユーザーデータを管理 (api) REST API や Bulk API 2.0 などの API を使用して、現在のログインユーザーのアカウントへのアクセスを許可します。 この範囲では、すべての Connect REST API リソースへのアクセスも許可されます。
          カスタム権限にアクセス (custom_permissions) 接続アプリケーションに関連付けられた組織内のカスタム権限へのアクセスを許可します。この範囲は、現在のユーザーの各権限が有効になっているかどうかを示します。
          ID URL サービスにアクセス (id, profile, email, address, phone) ID URL サービスへのアクセスを許可します。profileemailaddress、または phone を個別に要求して、id を使用した場合と同じ結果を得ることができます。これらは同義です。
          Lightning アプリケーションにアクセス (lightning) ハイブリッドアプリケーションで OAuth 2.0 ハイブリッドアプリケーショントークンフローおよびハイブリッドアプリケーション更新トークンフローを介して Lightning の子セッションを直接取得できるようにします。
          コンテンツリソースにアクセス (content) ハイブリッドアプリケーションで OAuth 2.0 ハイブリッドアプリケーショントークンフローおよびハイブリッドアプリケーション更新トークンフローを介してコンテンツの子セッションを直接取得できるようにします。
          一意のユーザー識別子にアクセス (openid)

          OpenID Connect アプリケーションの現在のログインユーザーの一意の識別子へのアクセスを許可します。

          OAuth 2.0 ユーザーエージェントフローと OAuth 2.0 Web サーバーフローでは、openid 範囲を使用します。この範囲を使用すると、アクセストークンの他にも、OpenID Connect の仕様に適合する署名付き ID トークンを受信できます。

          フルアクセス (full)

          ログインユーザーがアクセスできるすべてのデータへのアクセスを許可し、その他すべての範囲が対象となります。

          full は更新トークンを返しません。更新トークンを取得するには、refresh_tokenの範囲を明示的に要求する必要があります。

          いつでも要求を実行 (refresh_token, offline_access) 更新トークンを受け取る資格が要求元クライアントにある場合に、更新トークンを返すことを許可します。更新トークンにより、ユーザーがオフラインのときにアプリケーションはユーザーのデータを操作できます。このトークンは、offline_access を要求した場合と同じ意味になります。
          Visualforce アプリケーションにアクセス (visualforce)

          顧客が作成した Visualforce ページへのアクセスのみを許可します。この範囲では標準の Salesforce UI へのアクセスは許可されません。

          ハイブリッドアプリケーションで Visualforce の子セッションを直接取得できるようにするには、この範囲を OAuth 2.0 ハイブリッドアプリケーショントークンフローまたはハイブリッドアプリケーション更新トークンフローに含めます。

          Web ブラウザーを使用してユーザーデータを管理 (web) Web で access_token を使用することを許可します。この範囲には visualforce も含まれ、顧客が作成した Visualforce ページへのアクセスが許可されます。
          チャットボットサービスにアクセス (chatbot_api) Einstein ボット API サービスへのアクセスを許可します。
          ヘッドレス登録 API にアクセス (user_registration_api) ヘッドレス登録フローの API へのアクセスを許可します。認証を要求するようにフローを設定する場合、この範囲が含まれるアクセストークンを渡す必要があります。
          パスワードを忘れた場合のヘッドレス API にアクセス (forgot_password) ヘッドレスのパスワードを忘れた場合のフローの API へのアクセスを許可します。認証を要求するようにフローを設定する場合、この範囲が含まれるアクセストークンを渡す必要があります。
          すべての Data Cloud API リソースにアクセス (cdp_api) すべての Data Cloud API リソースへのアクセスを許可します。
          Salesforce API プラットフォームにアクセス (sfap_api) api.salesforce.com または同等の業務ゾーンのエンドポイントからアクセスする API サービスを含む、Salesforce API Platform へのアクセスを許可します。
          インタラクション API リソースにアクセス (interaction_api) 将来の使用のために予約されています。

          クライアントがアクセストークンを受信したら、認証サーバーは接続アプリケーションに割り当てられた範囲もその応答に含めます。更新トークンと共にこれらの範囲も保存されます。JSON ベアラートークン要求または SAML ベアラートークン要求では、要求によって前のすべての更新トークンの範囲が組み合わせられます。

          すべての範囲値に id が含まれており、これを使用して ID URL にいつでもアクセスできます。

          次の例の要求には、apiidweb 範囲が含まれています。範囲値は、スペース文字 %20 で区切られます。

          https://MyDomainName.my.salesforce.com/services/oauth2/authorize?
          response_type=token&
          client_id=3MVG9lKcPoNINVBKV6EgVJiF.snSDwh6_2wSS7BrOhHGEJkC_&
          redirect_uri=http%3A%2F%2F2www.example.org%2Fqa%2Fsecurity%2Foauth%2Fuseragent_flow_callback.jsp&
          scope=api%20id%20web
          
           
          読み込み中
          Salesforce Help | Article