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

AuthToken クラス

認証されたユーザーの認証プロバイダー (Janrain プロバイダー以外) に関連付けられたアクセストークンを提供するメソッドが含まれます。

名前空間

Auth

AuthToken のメソッド

AuthToken のメソッドは次のとおりです。すべてのメソッドが静的です。

getAccessToken(authProviderId, providerName)

組織の AuthProvider 定義に指定された 18 文字の ID と、Salesforce、Facebook などのサードパーティの正式名称を使用して、現在のユーザーのアクセストークンを返します。AuthProvider オブジェクトの ProviderType 項目を照会すると、期待されるプロバイダー名の値とは異なる値が返される場合があります。たとえば、Open ID Connect プロバイダーの場合、OpenIdConnect は AuthProvider オブジェクトの ProviderType 値ですが、期待される providerNameOpen ID Connect です。

署名

public static String getAccessToken(String authProviderId, String providerName)

パラメーター

authProviderId
型: String
providerName
型: String
サードパーティの正式名称。Janrain を除くすべてのプロバイダーの期待値は次のとおりです。
  • Facebook
  • Salesforce
  • Open ID Connect
  • Microsoft アクセスコントロールサービス
  • LinkedIn
  • Twitter
  • Google
Janrain プロバイダーの場合、パラメーター値が使用されるサードパーティの正式名称です。Yahoo! は Janrain プロバイダー値の一例です。

戻り値

型: String

getAccessTokenMap(authProviderId, providerName)

現在ログインしている Salesforce ユーザーサードパーティ識別子からアクセストークンへの対応付けを返します。識別子の値はサードパーティにより異なります。たとえば、Salesforce ではユーザー ID ですが、Facebook ではユーザー番号です。AuthProvider オブジェクトの ProviderType 項目を照会すると、期待されるプロバイダー名の値とは異なる値が返される場合があります。たとえば、Open ID Connect プロバイダーの場合、OpenIdConnect は AuthProvider オブジェクトの ProviderType 値ですが、期待される providerNameOpen ID Connect です。

署名

public static Map<String, String> getAccessTokenMap(String authProviderId, String providerName)

パラメーター

authProviderId
型: String
providerName
型: String
サードパーティの正式名称。Janrain を除くすべてのプロバイダーの期待値は次のとおりです。
  • Facebook
  • Salesforce
  • Open ID Connect
  • Microsoft アクセスコントロールサービス
  • LinkedIn
  • Twitter
  • Google
Janrain プロバイダーの場合、パラメーター値が使用されるサードパーティの正式名称です。Yahoo! は Janrain プロバイダー値の一例です。

戻り値

型: Map<String, String>

refreshAccessToken(authProviderId, providerName, oldAccessToken)

現在ログインしている Salesforce ユーザーについて、更新されたアクセストークンを含むサードパーティ識別子からの対応付けを返します。AuthProvider オブジェクトの ProviderType 項目を照会すると、期待されるプロバイダー名の値とは異なる値が返される場合があります。たとえば、Open ID Connect プロバイダーの場合、OpenIdConnect は AuthProvider オブジェクトの ProviderType 値ですが、期待される providerNameOpen ID Connect です。

署名

public static Map<String, String> refreshAccessToken(String authProviderId, String providerName, String oldAccessToken)

パラメーター

authProviderId
型: String
providerName
型: String
サードパーティの正式名称。Janrain を除くすべてのプロバイダーの期待値は次のとおりです。
  • Facebook
  • Salesforce
  • Open ID Connect
  • Microsoft アクセスコントロールサービス
  • LinkedIn
  • Twitter
  • Google
Janrain プロバイダーの場合、パラメーター値が使用されるサードパーティの正式名称です。Yahoo! は Janrain プロバイダー値の一例です。
oldAccessToken
型: String

戻り値

型: Map<String, String>

使用方法

このメソッドは、Salesforce または OpenID Connect プロバイダーを使用する場合は機能しますが、Facebook または Janrain を使用する場合は機能しません。返された対応付けには、AccessToken キーと RefreshError キーが含まれます。要求が成功したかどうかを確認するには、応答内のキーを評価します。要求が成功した場合、RefreshError 値は nullAccessToken はトークン値になります。要求が失敗した場合は、RefreshError 値はエラーメッセージ、AccessToken 値は null になります。

成功した場合は、このメソッドはデータベースに保存されているトークンを更新します。このトークンは、Auth.AuthToken.getAccessToken() を使用して取得できます。

OpenID Connect 認証プロバイダーを使用する場合、プロバイダーからの応答内に id_token は必要ありません。[トークン発行者] が [承認プロバイダー] 設定に指定されており、指定されていてもいなくても id_token が提供されている場合、Salesforce はそれを検証します。

1String accessToken = Auth.AuthToken.getAccessToken('0SOD000000000DeOAI', 'Open ID connect');
2Map<String, String> responseMap = Auth.AuthToken.refreshAccessToken('0SOD000000000DeOAI', 'Open ID connect', accessToken);

要求が成功した場合、応答にアクセストークンが含まれます。

1 (RefreshError,null)(AccessToken,00DD00000007BhE!AQkAQFzj...)

revokeAccess(authProviderId, providerName, userId, remoteIdentifier)

Facebook© など、サードパーティサービスからの指定されたソーシャルサインオンユーザーのアクセストークンを取り消します。このメソッドを使用できるのは、関連する ThirdPartyAccountLink オブジェクトの IsNotSsoUsable 項目が false に設定されている場合のみです。AuthProvider オブジェクトの ProviderType 項目を照会すると、期待されるプロバイダー名の値とは異なる値が返される場合があります。たとえば、Open ID Connect プロバイダーの場合、OpenIdConnect は AuthProvider オブジェクトの ProviderType 値ですが、期待される providerNameOpen ID Connect です。

署名

public static Boolean revokeAccess(String authProviderId, String providerName, String userId, String remoteIdentifier)

パラメーター

authProviderId
型: String
Salesforce 組織の認証プロバイダーの ID。
providerName
型: String
サードパーティの正式名称。Janrain を除くすべてのプロバイダーの期待値は次のとおりです。
  • Facebook
  • Salesforce
  • Open ID Connect
  • Microsoft アクセスコントロールサービス
  • LinkedIn
  • Twitter
  • Google
Janrain プロバイダーの場合、パラメーター値が使用されるサードパーティの正式名称です。Yahoo! は Janrain プロバイダー値の一例です。
userId
型: String
アクセスが取り消されるユーザーの 15 文字の ID。
remoteIdentifier
型: String
サードパーティシステムのユーザーの一意の ID (この値は関連付けけられた ThirdPartyAccountLink 標準オブジェクト内にあります)。

戻り値

型: Boolean

revokeAccess() 操作が成功した場合の戻り値は true、それ以外の場合は false になります。

次の例では、Facebook ユーザーのアクセストークンを取り消します。

1Auth.AuthToken.revokeAccess('0SOxx00000#####', 'facebook', '005xx00000#####', 'ThirdPartyIdentifier_exist214176560#####');