AuthProviderPluginClass クラス
名前空間
使用方法
シングルサインオン用のカスタム認証プロバイダーを作成するには、Auth.AuthProviderPluginClass を拡張するクラスを作成します。このクラスにより、認証プロバイダーのカスタム設定を保存し、ユーザーが外部サービスプロバイダーのログイン情報を使用して Salesforce にログインしたときに認証プロトコルを処理できます。Salesforce で、このインターフェースを実装するクラスは、[設定] の [認証プロバイダー] にある [プロバイダータイプ] ドロップダウンリストに表示されます。クラスを実行するよう指定するユーザーに「アプリケーションのカスタマイズ」権限と「認証プロバイダーの管理」権限があることを確認します。
API バージョン 39.0 以降、カスタムの外部認証プロバイダーを作成するには抽象クラス AuthProviderPluginClass を使用します。このクラスは AuthProviderPlugin インターフェースを置き換えます。インターフェースを使用してカスタム認証プロバイダープラグインをすでに実装している場合、その認証プロバイダーは引き続き機能します。ただし、プラグインを拡張するには AuthProviderPluginClass を使用してください。インターフェースを作成していない場合は、この抽象クラスを拡張してカスタム認証プロバイダープラグインを作成します。設定は、「AuthProviderPluginClass コード例」を参照してください。
AuthProviderPluginClass のメソッド
AuthProviderPluginClass メソッドでは、DML オプションはサポートされません。
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 が返された場合にのみ機能します。