次の方法で共有


Microsoft Entra ID を使用した自動ユーザー プロビジョニング用に Salesforce を構成する

この記事の目的は、Microsoft Entra ID から Salesforce にユーザー アカウントを自動的にプロビジョニングおよびプロビジョニング解除するために Salesforce と Microsoft Entra ID で実行するために必要な手順を示することです。

前提条件

この記事で説明するシナリオでは、次の項目が既にあることを前提としています。

  • Salesforce.com テナント。

  • Salesforce アカウントのユーザー名とパスワード、およびトークン。 トークンを取得する方法については、 自動ユーザー アカウント プロビジョニングの構成 を参照してください。 今後、アカウントパスワードをリセットすると、Salesforce から新しいトークンが提供され、Salesforce プロビジョニング設定を編集する必要があります。

  • 統合ユーザーの Salesforce のカスタム ユーザー プロファイル。 Salesforce ポータルでカスタム プロファイルを作成したら、以下を有効にするようにプロファイルの管理権限を編集します。

    • API の有効化。

    • ユーザーの管理: このオプションを有効にすると、次のものが自動的に有効になります: アクセス許可セットの割り当て、内部 UsersManage IP アドレスの管理、ログイン アクセス ポリシーの管理、パスワード ポリシーの管理、プロファイルとアクセス許可セットの管理、ロールの管理、共有の管理、ユーザー パスワードのリセットとユーザーのロック解除、すべてのユーザーの表示、ロールと階層の表示、セットアップと構成の表示。

    Salesforce ドキュメントの「プロファイルの作成またはクローン」も参照してください。

    このプロファイルにアクセス許可を直接割り当てます。 アクセス許可セットを通したアクセス許可の追加は行わないでください。

重要

Salesforce.com 試用版アカウントを使用している場合、自動ユーザー プロビジョニングを構成することはできません。 試用版アカウントでは、購入するまで必要な API アクセスは有効になりません。 この制限を回避するには、無料の 開発者アカウント を使用してこの記事を完了します。

Salesforce Sandbox 環境を使用している場合は、 Salesforce Sandbox 統合に関する記事を参照してください。

Salesforce へのユーザーの割り当てを計画する

Microsoft Entra ID では、選択されたアプリへのアクセスが付与されるユーザーを決定する際に "割り当て" という概念が使用されます。 自動ユーザー プロビジョニングのコンテキストでは、Microsoft Entra ID 内のアプリケーションに割り当て済みのユーザーやグループのみが同期されます。

プロビジョニング サービスを構成して有効にする前に、Salesforce アプリへのアクセスが必要な Microsoft Entra ID 内のユーザーやグループを決定しておく必要があります。

ユーザーを Salesforce に割り当てる際の重要なヒント

  • プロビジョニング構成をテストするには、1 人の Microsoft Entra ユーザーを Salesforce に割り当てることをお勧めします。 後で「ユーザーの割り当て」で説明されているメカニズムを使用して、より多くのユーザーやグループを 割り当てることができます

  • Salesforce にユーザーを割り当てるときに、有効なユーザー ロールを選択する必要があります。 "既定のアクセス" ロールはプロビジョニングでは機能しません。 一部のロールでは、Salesforce でのライセンスが必要になる場合があることに注意してください。

    プロビジョニング プロセスの一環として、Microsoft Entra は Salesforce からプロファイルをインポートします。 Salesforce からインポートされるプロファイルは、Microsoft Entra ID にアプリケーション ロールとして表示されるため、Microsoft Entra ID でユーザーを割り当てるときに選択できます。 ユーザーをカスタム プロファイルに割り当てる場合は、Salesforce からプロファイルがインポートされるまで待ってから、アプリケーションにユーザーを割り当てます。 ロールのインポートを行うときは、アプリケーション ロールを Microsoft Entra ID で手動で編集しないでください。

Salesforce での既存のユーザーの識別

Microsoft Entra と統合する前に、Salesforce アカウントには、Salesforce 管理者またはその他のプロセスによって作成された 1 人以上のユーザーが既に存在している可能性があります。 Salesforce エクスポート データ機能を使用して、どのユーザーが既に存在するかを確認できます。 詳細については、「 Salesforce からバックアップ データをエクスポートする」を参照してください。 Salesforce からエクスポートする場合は、 User データがエクスポートされたデータ セットに含まれていることを確認し、組織内のすべての名前 ( Unicode (UTF-8) など) を許可するエクスポート ファイル エンコードを選択します。

Salesforce からエクスポートされたデータを取得したら、 User.csv ファイルを抽出し、Excel または PowerShell で開いて、Salesforce に既に存在するアクティブなユーザーの一覧を表示できます。

import-csv .\User.csv | where {$_.IsActive -eq '1'}  | sort UserName | ft UserName

自動化されたユーザー プロビジョニングを有効にする

このセクションでは、Microsoft Entra ID を Salesforce のユーザー アカウント プロビジョニング API -v40 に接続する方法について説明します。

ヒント

Salesforce では SAML ベースのシングル サインオンを有効にすることもできます。これを行うには、Azure portal で説明されている手順に従ってください。 シングル サインオンは自動プロビジョニングとは別に構成できますが、これらの 2 つの機能は相補的な関係にあります。

自動ユーザー アカウント プロビジョニングを構成する

このセクションでは、Active Directory のユーザー アカウントのユーザー プロビジョニングを Salesforce に対して有効にする方法について説明します。

  1. クラウド アプリケーション管理者以上として Microsoft Entra 管理センターにサインインします。

  2. Entra ID>エンタープライズアプリケーションに移動します。

  3. シングル サインオンのために Salesforce を構成している場合は、検索フィールドで Salesforce のインスタンスを検索します。 構成していない場合は、 [追加] を選択してアプリケーション ギャラリーで Salesforce を検索します。 検索結果から Salesforce を選択してアプリケーションの一覧に追加します。

  4. Salesforce のインスタンスを選択してから、 [プロビジョニング] タブを選択します。

  5. [プロビジョニング モード][自動] に設定します。

    スクリーンショットは、Salesforce のプロビジョニング ページを示しています。[プロビジョニング モード] は [自動] に設定され、設定可能なその他の値が表示されています。

  6. [管理者資格情報] セクションに次の構成設定を指定します。

    1. [管理ユーザー名] ボックスに、Salesforce.com でシステム管理者プロファイルが割り当てられている Salesforce アカウント名を入力します。

    2. [管理パスワード] テキストボックスに、このアカウントのパスワードを入力します。

  7. Salesforce のセキュリティ トークンを取得するには、新しいタブを開き、同じ Salesforce の管理者アカウントにサインインします。 ページの右上隅で、自分の名前を選択し、[ 設定] を選択します。

    [Settings]\(設定\) リンクが選択された状態を示すスクリーンショット。

  8. 左側のナビゲーション ウィンドウで、[ マイ 個人情報 ] を選択して関連セクションを展開し、[ セキュリティ トークンのリセット] を選択します。

    [私の個人情報] で [自分のセキュリティ トークンのリセット] が選択されていることを示すスクリーンショット。

  9. [ セキュリティ トークンのリセット ] ページで、[ セキュリティ トークンのリセット ] ボタンを選択します。

    [セキュリティ トークンのリセット] ページを示すスクリーンショット。[セキュリティ トークンのリセット] の説明文とオプションが表示されている

  10. この管理アカウントに関連付けられている電子メールの受信トレイを確認します。 新しいセキュリティ トークンが記載された Salesforce.com からの電子メールを探します。

  11. トークンをコピーして、Microsoft Entra のウィンドウに移動し、[シークレット トークン] フィールドに貼り付けます。

  12. テナント URL は、Salesforce のインスタンスが Salesforce Government クラウドにある場合にのみ入力する必要があります。 それ以外の場合は省略可能です。 テナント URL は、https://<your-instance>.my.salesforce.com の形式で入力します。<your-instance> は、ご利用の Salesforce のインスタンスの名前に置き換えてください。

  13. [接続テスト] をクリックして、Microsoft Entra ID で Salesforce アプリに接続できることを確認します。

  14. プロビジョニングのエラー通知を受け取るユーザーまたはグループの電子メール アドレスを [通知用メール] フィールドに入力して、下のチェック ボックスをオンにします。

  15. [保存] を選択します。

  16. [マッピング] セクションで、[Microsoft Entra ユーザーを Salesforce に同期する] を選択します。

  17. [属性マッピング] セクションで、Microsoft Entra ID から Salesforce に同期されるユーザー属性を確認します。 [照合] プロパティとして選択されている属性は、更新処理で Salesforce のユーザー アカウントとの照合に使用されることに注意してください。 [保存] ボタンをクリックして変更をコミットします。

  18. Salesforce の Microsoft Entra プロビジョニング サービスを有効にするには、[設定] セクションで [プロビジョニング状態][オン] に変更します

  19. [保存] を選択します。

ユーザーが Salesforce アプリケーションでプロビジョニングされたら、管理者は言語固有の設定を構成する必要があります。 言語の構成の詳細については、こちらの記事を参照してください。

これで、[ユーザーとグループ] セクションで Salesforce に割り当てたユーザーやグループの初期同期が開始されます。 初期同期は後続の同期よりも実行に時間がかかります。後続の同期は、サービスが実行されている限り約 40 分ごとに実行されます。

モニタリング

[同期の詳細] セクションを使用すると、進行状況を監視できるほか、リンクをクリックしてプロビジョニング アクティビティ ログを取得できます。このログには、プロビジョニング サービスによって Salesforce アプリに対して実行されたすべてのアクションが記載されています。

Microsoft Entra プロビジョニング ログの読み方の詳細については、「自動ユーザー アカウント プロビジョニングについてのレポート」をご覧ください。

ユーザーを割り当てる

テストが完了し、ユーザーが Salesforce に正常にプロビジョニングされたら、Salesforce を必要とする他のユーザーがアプリケーション ロールに割り当てられていることを確認します。 これには、「Salesforce の既存のユーザーの識別」セクションで説明されているように、Salesforce で現在アクティブなアカウントを持っている すべてのユーザーが含まれます。 Microsoft Entra の Salesforce アプリケーションには、次のいずれかの手順に従って、これらのユーザーと追加の承認されたユーザーを割り当てることができます。

アプリケーションに割り当てられているユーザーが Microsoft Entra ID で更新されると、それらの変更は Salesforce に自動的にプロビジョニングされます。

一般的な問題

  • Salesforce へのプロビジョニングを有効にする際に問題が発生した場合は、次の点を確認してください。
    • 使用する資格情報に、Salesforce への管理者アクセス権がある。
    • 使用している Salesforce のバージョンでは、Web Access (開発者、エンタープライズ、サンドボックス、Salesforce の無制限エディションなど) がサポートされます。
    • Web API アクセスがユーザーに対して有効になっている。
  • Microsoft Entra プロビジョニング サービスでは、ユーザーのプロビジョニング言語、ロケール、およびタイムゾーンがサポートされています。 これらの属性は既定の属性マッピングに含まれていますが、既定のソース属性はありません。 既定のソース属性を選択し、そのソース属性が SalesForce で想定されている形式となるようにしてください。 たとえば、英語 (米国) の localeSidKey は、en_US です。 こちらに記載されているガイダンスを確認して、適切な localeSidKey 形式を把握してください。 languageLocaleKey の形式は、こちらに記載されています。 この形式が正しいことを確認するだけでなく、こちらに説明されているように、ユーザーに対して言語が有効になっていることを確認することが必要な場合もあります。
  • SalesforceLicenseLimitExceeded: このユーザーに使用可能なライセンスがないため、Salesforce でユーザーを作成できませんでした。 ターゲット アプリケーションの追加ライセンスを調達するか、 ユーザーの割り当てを確認 して、正しいユーザーが割り当てられていることを確認します。
  • SalesforceDuplicateUserName: ユーザーは、別の Salesforce.com テナントで複製された Salesforce.com 'Username' を持っているため、プロビジョニングできません。  Salesforce.com では、'Username' 属性の値は、すべての Salesforce.com テナントにわたって一意である必要があります。  既定では、Microsoft Entra ID のユーザーの userPrincipalName は、Salesforce.com でのそのユーザーの 'Username' になります。  この場合、2 つの選択肢があります。  1 つ目のオプションは、他の Salesforce.com テナントも管理する場合に、その他のテナントの重複する 'Username' を持つユーザーを探して、名前を変更することです。  2 つ目のオプションは、Microsoft Entra ユーザーから、ディレクトリが統合されている Salesforce.com テナントへのアクセス権を削除することです。 次回の同期の試行時に、この操作を再試行します。
  • SalesforceRequiredFieldMissing: Salesforce では、ユーザーを正常に作成または更新するために、特定の属性がユーザーに存在する必要があります。 このユーザーには、必須の属性の 1 つがありません。 Salesforce にプロビジョニングするすべてのユーザーに、email や alias などの属性が設定されていることを確認してください。 属性ベースのスコープ フィルターを使用して、これらの属性を持たないユーザーを対象外にすることができます。
  • Salesforce へのプロビジョニング用の既定の属性マッピングには、Microsoft Entra ID の appRoleAssignments を Salesforce の ProfileName にマップするための SingleAppRoleAssignments 式が含まれています。 属性マッピングでは 1 つのロールのプロビジョニングのみがサポートされるため、Microsoft Entra ID に複数のアプリ ロールの割り当てがないことを確認します。 グループが 1 つのロールに割り当てられているユーザーのグループがある場合、そのグループのメンバーは、別のロールを持つ Salesforce アプリケーションに直接割り当てることはできません。
  • Salesforce では、メールを変更する前に、その更新を手動で承認する必要があります。 そのため、メールの変更が承認されるまでは、プロビジョニングのログに、ユーザーのメールを更新するエントリが複数表示されることがあります。

その他のリソース