Newer Version Available
Oauth2TokenExchangeHandler クラス
このクラスを使用して、外部 ID プロバイダーからのトークンを検証し、OAuth 2.0 トークン交換フロー中にトークンの件名を Salesforce ユーザーにマッピングするトークン交換ハンドラーを作成します。このハンドラーを使用して、新しい User オブジェクトを設定し、それを Salesforce に返して自動的に挿入することにってユーザーを作成することもできます。
名前空間
使用方法
詳細は、「トークン交換ハンドラーの検証と件名のマッピング」を参照してください。
Oauth2TokenExchangeHandler のメソッド
Oauth2TokenExchangeHandler のメソッドは次のとおりです。
getUserForTokenSubject(networkId, result, canCreateUser, appDeveloperName, appType)
外部 ID プロバイダーのトークンで定義されたサブジェクトを見つけ、Salesforce サブジェクトに対応付けられるようにします。
署名
public User getUserForTokenSubject(Id networkId, Auth.TokenValidationResult result, Boolean canCreateUser, String appDeveloperName, Auth.IntegratingAppType appType)
パラメーター
- networkId
- 型: Id
- Salesforce ユーザーの識別子 (存在する場合)。
- result
- 型: Auth.TokenValidationResult
- Auth.Oauth2TokenExchangeHandler クラスの validateIncomingToken メソッドによって実行されたトークン検証の結果。
- canCreateUser
- 型: Boolean
- ユーザーが存在しない場合にハンドラーが User オブジェクトを設定できるかどうかを指定します。Salesforce はこのオブジェクトにユーザーを��動的に挿入します。
- appDeveloperName
- 型: String
- アプリケーションを Salesforce に統合するために使用されている Salesforce 接続アプリケーションまたは外部クライアントアプリケーションの開発者名。
- appType
- 型: Auth.IntegratingAppType
- アプリケーションを Salesforce に接続アプリケーションとして統合するか、外部クライアントアプリケーションとして統合するかを指定します。
戻り値
型: User
トークン、Salesforce、およびコールアウトから取得したユーザー情報を含む User オブジェクトを ID プロバイダーに返します (該当する場合)。User オブジェクトには、既存のユーザーレコード、またはデータベースにまだ挿入されていない新しいユーザーを指定できます。新しいユーザーの場合、Salesforce はトークン交換ハンドラーに代わってそのユーザーを自動的に挿入します。
validateIncomingToken(appDeveloperName, appType, incomingToken, tokenType)
OAuth 2.0 トークン交換フロー中に外部 ID プロバイダーから渡されたアクセストークン、更新トークン、ID トークン、SAML 2.0 アサーション、または JWT を検証します。
署名
public Auth.TokenValidationResult validateIncomingToken(String appDeveloperName, Auth.IntegratingAppType appType, String incomingToken, Auth.OAuth2TokenExchangeType tokenType)
パラメーター
- appDeveloperName
- 型: String
- アプリケーションを Salesforce に統合するために使用されている Salesforce 接続アプリケーションまたは外部クライアントアプリケーションの開発者名。
- appType
- 型: Auth.IntegratingAppType
- アプリケーションを Salesforce に接続アプリケーションとして統合するか、外部クライアントアプリケーションとして統合するかを指定します。
- incomingToken
- 型: String
- 外部 ID プロバイダーからのトークン。
- tokenType
- 型: Auth.OAuth2TokenExchangeType
- 外部 ID プロバイダーからのトークンの型。アクセストークン、更新トークン、ID トークン、SAML 2.0 アサーション、または JSON Web トークン (JWT) としてフォーマットされた任意のトークンにできます。
戻り値
トークンが有効かどうかと、トークンから抽出されたデータ、トークン自体、およびトークンの型に関する情報を返します。検証が失敗した場合にカスタムエラーメッセージを返すこともできます。