この文章は 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© など、サードパーティサービスからの指定されたソーシャルサインオンユーザのアクセストークンを取り消します。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#####');