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

Newer Version Available

This content describes an older version of this product. View Latest

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#####');