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

SamlJitHandler インターフェース

このインターフェースを使用して、SAML シングルサインオン時にジャストインタイムのユーザプロビジョニングロジックの制御とカスタマイズを行います。

名前空間

Auth

使用方法

SAML シングルサインオン時にユーザプロビジョニングのカスタムロジックを使用するには、Auth.SamlJitHandler を実装するクラスを作成する必要があります。これにより、ユーザがシングルサインオンで Salesforce にログインするときに、組織固有のロジック (カスタム項目の自動入力など) を組み込むことができます。クラスは、関連付けられた取引先レコードと取引先責任者レコードを含め、ユーザデータを作成および更新するロジックを必要に応じて実行する必要があります。

Salesforce で、[SAML シングルサインオン設定] の [SAML JIT ハンドラ] 項目にこのインターフェースを実装するクラスを指定します。クラスを実行するよう指定するユーザに「ユーザの管理」権限があることを確認します。

SamlJitHandler のメソッド

SamlJitHandler のメソッドは次のとおりです。

createUser(samlSsoProviderId, communityId, portalId, federationId, attributes, assertion)

指定された統合 ID を使用して User オブジェクトを返します。User オブジェクトはユーザ情報に対応します。このオブジェクトは、データベースに挿入されていない新規ユーザまたはデータベース内の既存のユーザレコードになります。

署名

public User createUser(Id samlSsoProviderId, Id communityId, Id portalId, String federationId, Map<String,String> attributes, String assertion)

パラメータ

samlSsoProviderId
型: Id
SamlSsoConfig 標準オブジェクトの ID。
communityId
型: Id
Experience Cloud サイトの ID。Experience Cloud ユーザを作成しない場合、このパラメータは null にできます。
portalId
型: Id
ポータルの ID。ポータルユーザを作成しない場合、このパラメータは null にできます。
federationId
型: String
このユーザに使用されると Salesforce が想定する ID。
attributes
型: Map<String, String>
SAML アサーションのうち、デフォルトのアサーションに追加されたすべての属性 (カスタム属性など)。属性では、大文字と小文字が区別されます。
アサーションが暗号化されると、Sfdc.SamlAssertion という鍵を持つ値として保存される復号化されたアサーションが属性の対応付けに含まれます。
assertion
型: String
Base-64 エンコードされたデフォルトの SAML アサーション。
アサーションが暗号化されると、このパラメータも暗号化されます。復号化されたアサーションにアクセスするには、属性の対応付けの Sfdc.SamlAssertion という鍵を確認します。

戻り値

型: User

User sObject。

使用方法

この組織に Experience Cloud サイトまたはポータルが設定されていない場合、communityId および portalId パラメータ値は null または関連付けられた鍵になる可能性があります。

updateUser(userId, samlSsoProviderId, communityId, portalId, federationId, attributes, assertion)

指定のユーザの情報を更新します。ユーザが以前 SAML シングルサインオンを使用してログインしたことがあり、再度ログインする場合、またはアプリケーションが [既存ユーザをリンクする URL] を使用している場合、このメソッドがコールされます。

署名

public void updateUser(Id userId, Id samlSsoProviderId, Id communityId, Id portalId, String federationId, Map<String,String> attributes, String assertion)

パラメータ

userId
型: Id
Salesforce ユーザの ID。
samlSsoProviderId
型: Id
SamlSsoConfig オブジェクトの ID。
communityId
型: Id
Experience Cloud サイトの ID。Experience Cloud ユーザを更新しない場合、この型は null にできます。
portalId
型: Id
ポータルの ID。ポータルユーザを更新しない場合、この型は null にできます。
federationId
型: String
このユーザに使用されると Salesforce が想定する ID。
attributes
型: Map<String,String>
SAML アサーションのうち、デフォルトのアサーションに追加されたすべての属性 (カスタム属性など)。属性では、大文字と小文字が区別されます。
アサーションが暗号化されると、Sfdc.SamlAssertion という鍵を持つ値として保存される復号化されたアサーションも属性の対応付けに含まれます。
assertion
型: String
Base-64 エンコードされたデフォルトの SAML アサーション。
アサーションが暗号化されると、このパラメータも暗号化されます。復号化されたアサーションにアクセスするには、属性の対応付けの Sfdc.SamlAssertion という鍵を確認します。

戻り値

型: void

SamlJitHandler の実装例

これは、Auth.SamlJitHandler インターフェースの実装例です。このコードでは、非公開メソッドを使用して取引先と取引先責任者を処理します (handleContact() と handleAccount() は、この例には含まれていません)。