AuthProviderPluginClass クラス
名前空間
使用方法
シングルサインオン用のカスタム認証プロバイダを作成するには、Auth.AuthProviderPluginClass を拡張するクラスを作成します。このクラスにより、認証プロバイダのカスタム設定を保存し、ユーザが外部サービスプロバイダのログイン情報を使用して Salesforce にログインしたときに認証プロトコルを処理できます。Salesforce で、このインターフェースを実装するクラスは、[設定] の [認証プロバイダ] にある [プロバイダタイプ] ドロップダウンリストに表示されます。クラスを実行するよう指定するユーザに「アプリケーションのカスタマイズ」権限と「認証プロバイダの管理」権限があることを確認します。
API バージョン 39.0 以降、カスタムの外部認証プロバイダを作成するには抽象クラス AuthProviderPluginClass を使用します。このクラスは AuthProviderPlugin インターフェースを置き換えます。インターフェースを使用してカスタム認証プロバイダプラグインをすでに実装している場合、その認証プロバイダは引き続き機能します。ただし、プラグインを拡張するには AuthProviderPluginClass を使用してください。インターフェースを作成していない場合は、この抽象クラスを拡張してカスタム認証プロバイダプラグインを作成します。設定は、「AuthProviderPluginClass コード例」を参照してください。
AuthProviderPluginClass のメソッド
AuthProviderPluginClass のメソッドは次のとおりです。
getCustomMetadataType()
署名
public String getCustomMetadataType()
使用方法
getCustomMetatadaType() メソッドは、カスタムメタデータ型の名前のみを返します。カスタムメタデータレコード名は返しません。API バージョン 39.0 以降、Auth.AuthProviderPluginClass を拡張してカスタムの外部認証プロバイダを作成する場合はこのメソッドを使用します。
getUserInfo(authProviderConfiguration, response)
署名
public Auth.UserData getUserInfo(Map<String,String> authProviderConfiguration, Auth.AuthProviderTokenResponse response)
パラメータ
- authProviderConfiguration
- 型: Map<String, String>
- カスタム認証プロバイダの設定。Salesforce にカスタムメタデータ型を作成すると、設定でカスタムメタデータ型のデフォルト値が入力されます。または、[設定] の [承認プロバイダ] でカスタムプロバイダを作成したときに入力した値を設定で指定することもできます。
- response
- 型: Auth.AuthProviderTokenResponse
-
OAuth アクセストークン、OAuth の秘密または更新トークン、および現在のユーザを認証するために認証プロバイダによって指定された状態。
使用方法
API バージョン 39.0 以降、Auth.AuthProviderPluginClass を拡張してカスタム認証プロバイダを作成する場合はこのメソッドを使用します。
handleCallback(authProviderConfiguration, callbackState)
署名
public Auth.AuthProviderTokenResponse handleCallback(Map<String,String> authProviderConfiguration, Auth.AuthProviderCallbackState callbackState)
パラメータ
- authProviderConfiguration
- 型: Map<StringString>
- カスタム認証プロバイダの設定。Salesforce にカスタムメタデータ型を作成すると、設定にカスタムメタデータ型のデフォルト値が入力されます。または、[設定] の [承認プロバイダ] でカスタムプロバイダを作成したときに入力した値を設定で指定することもできます。
- callbackState
- 型: Auth.AuthProviderCallbackState
- 認証要求の HTTP ヘッダー、本文、および queryParams が含まれるクラス。
使用方法
API バージョン 39.0 以降、Auth.AuthProviderPluginClass を拡張してカスタム認証プロバイダを作成する場合はこのメソッドを使用します。
initiate(authProviderConfiguration, stateToPropagate)
署名
public System.PageReference initiate(Map<String,String> authProviderConfiguration, String stateToPropagate)
パラメータ
使用方法
API バージョン 39.0 以降、Auth.AuthProviderPluginClass を拡張してカスタム認証プロバイダを作成する場合はこのメソッドを使用します。
refresh(authProviderConfiguration, refreshToken)
署名
public Auth.OAuthRefreshResult refresh(Map<String,String> authProviderConfiguration, String refreshToken)
パラメータ
戻り値
型: Auth.OAuthRefreshResult
新しいアクセストークンを返すか、エラーが発生した場合はエラーメッセージを返します。
使用方法
要求が成功した場合、アクセストークンおよび更新トークンと共に Auth.OAuthRefreshResult を応答に返します。エラーを受け取った場合は、エラーメッセージにエラー文字列を必ず設定してください。NULL のエラー文字列はエラーがないことを示します。
この更新方法は指定ログイン情報でのみ機能します。標準の OAuth 更新フローに従いません。指定ログイン情報を使用する更新方法は、前の要求で 401 が返された場合にのみ機能します。