この記事では、Microsoft Entra IDから SAP Cloud Identity Services へのプロビジョニングを構成する手順について説明します。 目標は、ユーザーが SAP Cloud Identity Services に対して認証を行い、他の SAP ワークロードにアクセスできるように、ユーザーを SAP Cloud Identity Services に自動的にプロビジョニングおよびプロビジョニング解除するMicrosoft Entra IDを設定することです。 SAP Cloud Identity Services では、そのローカル ID ディレクトリから他の SAP アプリケーションへ、ターゲット システムとしてのプロビジョニングがサポートされています。
注
この記事では、Microsoft Entra ユーザー プロビジョニング サービスに組み込まれているコネクタについて説明します。 このサービスの機能、しくみ、よく寄せられる質問の詳細については、「 Microsoft Entra ID を使用した SaaS アプリケーションへの自動ユーザー プロビジョニングとプロビジョニング解除」を参照してください。 SAP Cloud Identity Services には、Microsoft Entra IDからユーザーとグループを読み取る独自のコネクタもあります。 詳細については、「SAP Cloud Identity Services - Identity Provisioning - Microsoft Entra ID をソース システムとして」を参照>。
注
SAP Cloud Identity Services コネクタの新しいバージョンが一般公開され、Microsoft Entra アプリ ギャラリーの SAP Cloud Identity Services 一覧の既定値になりました。 このコネクタの現在のバージョンでは、次の変更が行われます。
- SCIM 2.0 標準に更新されました
- SAP Cloud Identity Services へのグループ プロビジョニングとプロビジョニング解除のサポート
- カスタム拡張機能属性のサポート
- OAuth 2.0 クライアント資格情報の付与のサポート
Important
SAP IAG で
- ソース属性: objectId
- ターゲット属性: userName
前提条件
この記事で説明するシナリオでは、次の前提条件が既にあることを前提としています。
- アクティブなサブスクリプションを持つMicrosoft Entra ユーザー アカウント。 まだアカウントがない場合は、無料でアカウントを作成することができます。
- 次のいずれかのロール:
- SAP Cloud Identity Services のテナント
- 管理者権限を持つ SAP Cloud Identity Services のユーザー アカウント。
- グループ プロビジョニング機能を使用するには、Microsoft Entra ID P1 ライセンスが必要です。
注
この統合は、米国政府機関向けクラウド環境Microsoft Entraから使用することもできます。 このアプリケーションは、Microsoft Entra US Government Cloud Application Gallery で見つけ、パブリック クラウド環境から行うのと同じ方法で構成できます。
Microsoft Entra IDにユーザーがまだ存在しない場合は、記事「SAPのソースアプリとターゲットアプリを用いたユーザーのプロビジョニングのためのMicrosoft Entra展開計画」から始めてください。 この記事では、SAP SuccessFactors など、組織内のワーカーの一覧の権限のあるソースとMicrosoft Entraを接続する方法について説明します。 また、Microsoft Entraを使用してこれらのワーカーの ID を設定し、SAP ECC や SAP S/4HANA などの 1 つ以上の SAP アプリケーションにサインインできるようにする方法についても説明します。
Microsoft Entra ID ガバナンスを使用して SAP ワークロードへのアクセスを管理する運用環境で SAP Cloud Identity Services へのプロビジョニングを構成する場合は、先に進む前にMicrosoft Entra IDを構成する前に前提条件を確認してください。
プロビジョニング用に SAP Cloud Identity Services を設定する
この記事では、SAP Cloud Identity Services に管理システムを追加し、Microsoft Entraを構成します。
SAP Cloud Identity Services 管理コンソール、
https://<tenantID>.accounts.ondemand.com/admin、または試用版の場合にはhttps://<tenantID>.trial-accounts.ondemand.com/adminにサインインします。 [Users & Authorizations](ユーザーと承認) > [Administrators](管理者) に移動します。
新しい管理者を一覧に追加するには、左側パネルの [+ 追加] ボタンを押します。 [システムの追加] を選択し、システムの名前を入力します。
注
SAP Cloud Identity Services の管理者 ID の種類は System にする必要があります。 管理者ユーザーは、プロビジョニング時に SAP SCIM API に対して認証を行うことができません。 SAP Cloud Identity Services では、システムの作成後にシステムの名前を変更することはできません。
[Configure Authorizations](承認の構成) で、[Manage Users](ユーザーの管理) のトグル ボタンをオンにします。 次に、[ 保存] を選択してシステムを作成します。
管理者システムが作成されたら、そのシステムに新しいシークレットを追加します。
SAP によって生成された クライアント ID と クライアント シークレット をコピーします。 これらの値は、[管理者ユーザー名] フィールドと [管理者パスワード] フィールドにそれぞれ入力されます。 これは、次のセクションで設定した SAP Cloud Identity Services アプリケーションの [プロビジョニング] タブで行います。
SAP Cloud Identity Services には、ターゲット システムとして 1 つ以上の SAP アプリケーションへのマッピングが含まれる場合があります。 それらの SAP アプリケーションを SAP Cloud Identity Services を通してプロビジョニングする必要がある属性がユーザーにあるかどうかを確認します。 この記事では、SAP Cloud Identity Services とダウンストリーム ターゲット システムには、
userNameとemails[type eq "work"].valueの 2 つの属性が必要であると想定しています。 SAP ターゲット システムに他の属性が必要であり、Microsoft Entra ID ユーザー スキーマに含まれていない場合は、synching 拡張機能属性を構成する必要があります。
ギャラリーから SAP Cloud Identity Services を追加する
Microsoft Entra IDを構成して SAP Cloud Identity Services への自動ユーザー プロビジョニングを行う前に、Microsoft Entra アプリケーション ギャラリーからテナントのエンタープライズ アプリケーションの一覧に SAP Cloud Identity Services を追加する必要があります。 この手順は、Microsoft Entra 管理センターで行うか、Graph APIを使用して実行できます。
SAP Cloud Identity Services が SAML を使用してMicrosoft Entraからシングル サインオンするように既に構成されており、アプリケーションがエンタープライズ アプリケーションのMicrosoft Entra一覧に既に存在する場合は、次のセクション>
注
OpenID Connect 統合用にアプリケーション登録を以前に構成している場合、そのアプリケーション登録のプロビジョニングを構成することはできません。 代わりに、プロビジョニング用の別のエンタープライズ アプリケーションを作成します。
Microsoft Entra 管理センターを使用した SAP Cloud Identity Services の追加
Microsoft Entra 管理センターを使用してMicrosoft Entra アプリケーション ギャラリーから SAP Cloud Identity Services を追加するには、次の手順を実行します:
- Microsoft Entra 管理センターに少なくとも Cloud アプリケーション管理者としてサインインします。
- Entra ID>Enterprise apps>New application に移動します。
- アプリをギャラリーから追加するには、検索ボックスに「SAP CLoud Identity Services」と入力します。
- 結果のパネルから [SAP Cloud Identity Services] を選択し、アプリを追加します。 お使いのテナントにアプリが追加されるのを数秒待機します。
- 次のセクションに進み、プロビジョニングを構成します。
Microsoft Graphを使用した SAP Cloud Identity Services の追加
アプリケーションとサービス プリンシパルは、Graph APIを介して作成できます。
まず、 SAP Cloud Identity Servicesのギャラリー アプリケーション テンプレート識別子を取得します。
GET https://graph.microsoft.com/v1.0/applicationTemplates?$filter=displayName eq 'SAP Cloud Identity Services'
応答からアプリケーション テンプレートの id を抽出します。 次に、ギャラリー アプリケーションとサービス プリンシパルを作成します。
POST https://graph.microsoft.com/v1.0/applicationTemplates/{applicationTemplateId}/instantiate
Content-type: application/json
{
"displayName": "SAP Cloud Identity Services"
}
応答には、新しいアプリケーション オブジェクトとサービス プリンシパル オブジェクトが含まれます。
次に、先ほど作成したサービス プリンシパルの id を使用して、プロビジョニング構成用のテンプレートを取得します。
GET https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/templates
プロビジョニングを有効にするには、ジョブを作成する必要があります。 プロビジョニング ジョブを作成するには、次の要求を使用します。 ジョブに使用するテンプレートを指定するときは、前の手順の id を templateId として使用します。
POST https://graph.microsoft.com/beta/servicePrincipals/{id}/synchronization/jobs
Content-type: application/json
{
"templateId": "sapcloudidentityservices"
}
次のセクションで説明するように、サービス プリンシパルに関連付けられている プロビジョニング ジョブとテンプレート スキーマ をさらに構成できます。 次に、Microsoft Entra が SAP Cloud Identity Services に対する認証を行うためにアクセスを許可し、その後、プロビジョニングジョブを開始します。
SAP Cloud Identity Services に対する自動ユーザー プロビジョニングの構成
このセクションでは、Microsoft Entra IDのアプリケーションへのユーザーとグループの割り当てに基づいて SAP Cloud Identity Services のユーザーとグループを作成、更新、無効化するようにMicrosoft Entra プロビジョニング サービスを構成する手順について説明します。
Microsoft Entra IDで SAP Cloud Identity Services の自動ユーザー プロビジョニングを構成するには:
Microsoft Entra 管理センターに少なくとも Cloud アプリケーション管理者としてサインインします。
Entra ID Enterprise apps に移動します
アプリケーションのリストで、SAP Cloud Identity Services アプリケーションを選択します。
[プロパティ] タブを選択します。
[割り当てが必要ですか?] オプションが [はい] に設定されていることを確認します。 [いいえ] に設定されている場合は、外部 ID を含むディレクトリ内のすべてのユーザーがアプリケーションにアクセスでき、アプリケーションへのアクセスをレビューすることはできません。
[プロビジョニング] タブを選択します。
[プロビジョニング モード] を [自動] に設定します。
[ 管理者資格情報 ] セクションで、[ OAuth2 クライアント資格情報の付与] を選択します。 テナント URL に SAP Cloud Identity Services のテナント ID を使用し、
https://<tenantID>.accounts.ondemand.com/scimを入力するか、試用版の場合はhttps://<tenantid>.trial-accounts.ondemand.com/scimを入力してください。 トークン エンドポイントを入力します。これは、次のhttps://<tenantID>.accounts.ondemand.com/oauth2/tokenのようになります。 SAP Cloud Identity Services の管理コンソールから以前に生成したクライアント ID とクライアント シークレットの値を入力します。 Test Connection を選択して、Microsoft Entra IDが SAP Cloud Identity Services に接続できることを確認します。 接続に失敗した場合は、SAP Cloud Identity Services システム アカウントに管理者アクセス許可があり、シークレットがまだ有効であることを確認してから、もう一度やり直してください。
[通知用メール] フィールドに、プロビジョニングのエラー通知を受け取るユーザーまたはグループの電子メール アドレスを入力して、 [エラーが発生したときにメール通知を送信します] チェック ボックスをオンにします。
保存 を選択します。
プロビジョニングの概要で [ID の検出] を 選択して、SAP Cloud Identity Services の アカウントを検出 します。 このオプションは、Entra ID ガバナンス ライセンスを持つ組織にのみ表示されます。
Mappings セクションで、シナリオに応じて provision Microsoft Entra ID users または provision Microsoft Entra ID groups を選択します。
Attribute Mapping セクションで、Microsoft Entra IDから SAP Cloud Identity Services に同期されるユーザー属性とグループ属性を確認します。 マッピングのターゲットとして使用できる SAP Cloud Identity Services の属性が表示されない場合は、[ 詳細オプションの表示 ] を選択し、 SAP Cloud Platform Identity Authentication Service の属性リストの編集 を選択して 、サポートされている属性の一覧を編集します。 SAP Cloud Identity Services テナントの属性を追加します。
Matching プロパティとして選択したソース属性とターゲット属性を確認して記録します。 Matching precedence を持つマッピング。これらの属性は、Microsoft Entra プロビジョニング サービスの SAP Cloud Identity Services のユーザーとグループを照合して、新しいユーザー/グループを作成するか、既存のユーザー/グループを更新するかを決定するために使用されます。 照合に関する詳細については、「ソース システムとターゲット システムのユーザー照合」を参照してください。 その後の手順では、重複するユーザーが作成されないようにするために、SAP Cloud Identity Services に既に存在するすべてのユーザーに[ 照合 プロパティ]が設定された属性が選択されていることを確認します。
IsSoftDeletedの属性マッピング、またはIsSoftDeletedを含む関数がアプリケーションの属性にマップされていることを確認します。 ユーザーがアプリケーションから割り当て解除されたり、Microsoft Entra IDで論理的に削除されたり、サインインがブロックされたりすると、Microsoft Entra プロビジョニング サービスによって、isSoftDeletedにマップされた属性が更新されます。 マップされた属性がない場合、後でアプリケーション ロールから割り当て解除されたユーザーは、引き続きアプリケーションのデータ ストアに存在します。SAP Cloud Identity Services またはダウンストリームのターゲット SAP システムに必要なその他のマッピングを追加します。
[保存] ボタンをクリックして変更をコミットします。
ユーザー属性 タイプ フィルター処理のサポート SAP Cloud Identity Services に必要 userName糸 ✓ ✓ emails[type eq "work"].value糸 ✓ activeブール値 displayName糸 urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:managerリファレンス addresses[type eq "work"].country糸 addresses[type eq "work"].locality糸 addresses[type eq "work"].postalCode糸 addresses[type eq "work"].region糸 addresses[type eq "work"].streetAddress糸 name.givenName糸 name.familyName糸 name.honorificPrefix糸 phoneNumbers[type eq "fax"].value糸 phoneNumbers[type eq "mobile"].value糸 phoneNumbers[type eq "work"].value糸 urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:costCenter糸 urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department糸 urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:division糸 urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber糸 urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:organization糸 locale糸 timezone糸 userType糸 company糸 urn:sap:cloud:scim:schemas:extension:custom:2.0:User:attributes:customAttribute1糸 urn:sap:cloud:scim:schemas:extension:custom:2.0:User:attributes:customAttribute2糸 urn:sap:cloud:scim:schemas:extension:custom:2.0:User:attributes:customAttribute3糸 urn:sap:cloud:scim:schemas:extension:custom:2.0:User:attributes:customAttribute4糸 urn:sap:cloud:scim:schemas:extension:custom:2.0:User:attributes:customAttribute5糸 urn:sap:cloud:scim:schemas:extension:custom:2.0:User:attributes:customAttribute6糸 urn:sap:cloud:scim:schemas:extension:custom:2.0:User:attributes:customAttribute7糸 urn:sap:cloud:scim:schemas:extension:custom:2.0:User:attributes:customAttribute8糸 urn:sap:cloud:scim:schemas:extension:custom:2.0:User:attributes:customAttribute9糸 urn:sap:cloud:scim:schemas:extension:custom:2.0:User:attributes:customAttribute10糸 sendMail糸 mailVerified糸 グループ属性 タイプ フィルター処理のサポート SAP Cloud Identity Services に必要 id糸 ✓ ✓ externalId糸 displayName糸 ✓ urn:sap:cloud:scim:schemas:extension:custom:2.0:Group:name糸 urn:sap:cloud:scim:schemas:extension:custom:2.0:Group:description糸 membersリファレンス ✓ スコープ フィルターを構成するには、スコープ フィルターに関する記事に記載されている次の手順 を参照してください。
SAP Cloud Identity Services のMicrosoft Entra プロビジョニング サービスを有効にするには、
Settings>/c0> セクションで Provisioning Status をOn に変更します。
[設定] セクションの [範囲] の値には、[ロール割り当て済みユーザーとグループのみを同期する] を選択します。
プロビジョニングの準備ができたら、 [保存] を選択します。
この操作によって、 [設定] セクションの [スコープ] で定義したすべてのユーザーの初期同期が開始されます。 [ロール割り当て済みユーザーとグループのみを同期する] に範囲を設定し、アプリケーションにユーザーまたはグループが割り当てられていない場合、ユーザーがアプリケーションに割り当てられるまで同期は行われません。
Microsoft Entra IDから SAP Cloud Identity Services への新しいテスト ユーザーのプロビジョニング
1 人の新しいMicrosoft Entraテスト ユーザーを SAP Cloud Identity Services に割り当てて、自動ユーザー プロビジョニング構成をテストすることをお勧めします。
- 少なくとも Microsoft Entra 管理センターCloud アプリケーション管理者およびユーザー管理者としてサインインします。
- Entra ID>Users に移動します。
- [新しいユーザー]>[新しいユーザーの作成] を選択します。
- 新しいテスト ユーザーの [ユーザー プリンシパル名] と [表示名] を入力します。 ユーザー プリンシパル名は、現在または以前のMicrosoft Entraユーザーまたは SAP Cloud Identity Services ユーザーと同じではなく、一意である必要があります。 [確認と作成]、[作成] の順に選択します。
- テスト ユーザーが作成されたら、Entra ID>Enterprise アプリに移動します。
- SAP Cloud Identity Services アプリケーションを選択します。
- [ユーザーとグループ] を選択し、次に [ユーザー/グループの追加] を選択します。
- [ユーザーとグループ] で、[選択なし] を選択して、テキスト ボックスにテスト ユーザーのユーザー プリンシパル名を入力します。
- [選択] を選択し、次に [割り当て] を選択します。
- [プロビジョニング] を選択し、次に [オンデマンド プロビジョニング] を選択します。
- [ユーザーまたはグループの選択] テキスト ボックスに、テスト ユーザーのユーザー プリンシパル名を入力します。
- プロビジョン を選択します。
- プロビジョニングが完了するまで待ちます。 成功した場合は、メッセージ
Modified attributes (successful)が表示されます。
また、必要に応じて、ユーザーがアプリケーションのスコープ外になったときに、Microsoft Entra プロビジョニング サービスがプロビジョニングする内容を確認することもできます。
- ユーザーおよびグループの選択
- テスト ユーザーを選択し、次に [削除] を選択します。
- テスト ユーザーが削除されたら、[プロビジョニング] を選択し、[オンデマンドのプロビジョニング] を選択します。
- [ユーザーまたはグループ] テキスト ボックスに、割り当て解除されたばかりのテスト ユーザーのユーザー プリンシパル名を入力します。
- プロビジョン を選択します。
- プロビジョニングが完了するまで待ちます。
最後に、Microsoft Entra IDからテスト ユーザーを削除できます。
- Entra ID>Users に移動します。
- テスト ユーザーを選択し、[削除] を選択し、次に [OK] を選択します。 このアクションにより、テスト ユーザーがMicrosoft Entra IDから論理的に削除されます。
その後、SAP Cloud Identity Services からテスト ユーザーを削除することもできます。
アプリケーション内の既存のユーザーを識別し、エンタープライズ アプリケーションに割り当てる
Microsoft Entraは、アプリケーション内の既存のユーザーを検出し、エンタープライズ アプリケーションへの割り当てを簡素化できます。 プロビジョニングの概要ページの [ ID の検出 ] ボタンをクリックします。 レポートが生成されると、アプリケーション内のすべてのユーザーのビューが表示されます。アプリケーション内のユーザーは、Microsoft Entra ID ユーザーと一致し、どのユーザーが Microsoft Entra ID のエンタープライズ アプリケーションに既に割り当てられているか、アプリケーション内のどのユーザーがMicrosoft Entra IDユーザーと一致していません。 その後、単純な PowerShell スクリプトを実行して、検出されたユーザーをアプリケーションに割り当てることができます。
CorrelatedUsers.ps1 ファイルをダウンロードします。
現在ロール割り当てがないユーザーに対するアプリケーションロール割り当てを作成する準備を行う(テスト実行):
.\Assign-CorrelatedUsers.ps1 -ServicePrincipalId "7A22..." -DryRun現在ロールの割り当てがないユーザーに対してアプリケーション ロールの割り当てを作成します。
.\Assign-CorrelatedUsers.ps1 -ServicePrincipalId "7A22..."変更がMicrosoft Entra ID内に反映されるまで 1 分待ちます。
検出機能には、Entra ID ガバナンス ライセンスが必要です。 必要なライセンスを持たない組織でも、以下の手順に従って SAP CLout Identity Services の既存のユーザーを特定し、Microsoft Entraのエンタープライズ アプリケーションに割り当てることができます。
既存の SAP Cloud Identity Services ユーザーが必要な合致属性を持っていることを確認する
Microsoft Entra IDの SAP Cloud Identity Services アプリケーションに非テスト ユーザーを割り当てる前に、Microsoft Entra IDのユーザーと同じユーザーを表す SAP Cloud Identity Services に既に存在するすべてのユーザーに、SAP Cloud Identity Services にマッピング属性が設定されていることを確認する必要があります。
プロビジョニング マッピングでは、Matching プロパティとして選択された属性が、Microsoft Entra IDのユーザー アカウントと SAP Cloud Identity Services のユーザー アカウントとの照合に使用されます。 SAP Cloud Identity Services に一致しないユーザーがMicrosoft Entra IDに存在する場合、Microsoft Entra プロビジョニング サービスは新しいユーザーの作成を試みます。 Microsoft Entra IDにユーザーが存在し、SAP Cloud Identity Services に一致する場合、Microsoft Entra プロビジョニング サービスはその SAP Cloud Identity Services ユーザーを更新します。 このため、SAP Cloud Identity Services に既に存在するユーザーには、[照合] プロパティとして選択されている属性が設定されていることを確認する必要があります。そうしないと、重複するユーザーが作成される可能性があります。 Microsoft Entraアプリケーション属性マッピングで一致する属性を変更する必要がある場合は、「ソース システムとターゲット システムのユーザーの照合を参照してください。
SAP Cloud Identity Services 管理コンソール、
https://<tenantID>.accounts.ondemand.com/admin、または試用版の場合にはhttps://<tenantID>.trial-accounts.ondemand.com/adminにサインインします。[ユーザーと認可] > [ユーザーのエクスポート] に移動します。
Microsoft Entraユーザーを SAP のユーザーと照合するために必要なすべての属性を選択します。 これらの属性には、
SCIM ID、userName、emails、および識別子として SAP システムで使用できるその他の属性が含まれます。[エクスポート] を選択し、ブラウザーが CSV ファイルをダウンロードするまで待ちます。
PowerShell ウィンドウを開きます。
エディターに次のスクリプトを入力します。 1 行目で、
userName以外の照合属性を選択した場合は、sapScimUserNameField変数の値を SAP Cloud Identity Services 属性の名前に変更します。 2 行目で、エクスポートした CSV ファイルのファイル名に引数をUsers-exported-from-sap.csvからダウンロードしたファイルの名前に変更します。$sapScimUserNameField = "userName" $existingSapUsers = import-csv -Path ".\Users-exported-from-sap.csv" -Encoding UTF8 $count = 0 $warn = 0 foreach ($u in $existingSapUsers) { $id = $u.id if (($null -eq $id) -or ($id.length -eq 0)) { write-error "Exported CSV file doesn't contain the ID attribute of SAP Cloud Identity Services users." throw "ID attribute not available, re-export" return } $count++ $userName = $u.$sapScimUserNameField if (($null -eq $userName) -or ($userName.length -eq 0)) { write-warning "SAP Cloud Identity Services user $id doesn't have a $sapScimUserNameField attribute populated" $warn++ } } write-output "$warn of $count users in SAP Cloud Identity Services did not have the $sapScimUserNameFIeld attribute populated."スクリプトを実行します。 スクリプトが完了したら、必要な照合属性がないユーザーが 1 人以上いた場合は、エクスポートされた CSV ファイルまたは SAP Cloud Identity Services 管理コンソールでそれらのユーザーを検索します。 これらのユーザーもMicrosoft Entraに存在する場合は、最初にそれらのユーザーの SAP Cloud Identity Services 表現を更新して、一致する属性が設定されるようにする必要があります。
SAP Cloud Identity Services でこれらのユーザーの属性を更新したら、手順 2 から 5 と当セクションの PowerShell 手順で説明されているように SAP Cloud Identity Services からユーザーを再エクスポートし、SAP Cloud Identity Services のユーザーにそれらのユーザーへのプロビジョニングを妨げる照合属性がないことを確認します。
SAP Cloud Identity Services から取得したすべてのユーザーの一覧が作成されたので、アプリケーションのデータ ストアのユーザーを、既にMicrosoft Entra IDユーザーと照合して、プロビジョニングのスコープに含めるユーザーを決定します。
Microsoft Entra IDでユーザーの ID を取得する
このセクションでは、Microsoft Graph PowerShell コマンドレットを使用してMicrosoft Entra IDを操作する方法について説明します。
このシナリオで組織が初めてこれらのコマンドレットを使用するときは、テナントで powerShell Microsoft Graph使用できるようにするには、グローバル管理者ロールである必要があります。 以降の操作では、次のような低い特権のロールを使用できます。
- ユーザー管理者、新しいユーザーの作成が予測される場合。
- アプリケーション管理者または ID ガバナンス管理者、アプリケーション ロールの割り当ての管理だけを行う場合。
PowerShell を開きます。
Microsoft Graph PowerShell モジュールが既にインストールされていない場合は、次のコマンドを使用して、
Microsoft.Graph.Usersモジュールなどをインストールします。Install-Module Microsoft.Graphこれらのモジュールが既にインストールされている場合は、最新バージョンを使用していることを確認します。
Update-Module microsoft.graph.users,microsoft.graph.identity.governance,microsoft.graph.applicationsMicrosoft Entra IDに接続します。
$msg = Connect-MgGraph -ContextScope Process -Scopes "User.ReadWrite.All,Application.ReadWrite.All,AppRoleAssignment.ReadWrite.All,EntitlementManagement.ReadWrite.All"このコマンドを初めて使用する場合は、Microsoft Graphコマンド ライン ツールにこれらのアクセス許可を付与することを許可する必要があります。
アプリケーションのデータ ストアから取得したユーザーの一覧を、PowerShell セッションに読み込みます。 ユーザーの一覧の形式が CSV ファイルであった場合は、PowerShell コマンドレット
Import-Csvを使用し、引数として前のセクションのファイルの名前を指定できます。たとえば、SAP Cloud Identity Services から取得したファイル名が Users-exported-from-sap.csv で、現在のディレクトリにある場合は、次のコマンドを入力します。
$filename = ".\Users-exported-from-sap.csv" $dbusers = Import-Csv -Path $filename -Encoding UTF8別の例として、データベースまたはディレクトリを使用している場合、ファイル名が users.csv で、現在のディレクトリにある場合は、次のコマンドを入力します:
$filename = ".\users.csv" $dbusers = Import-Csv -Path $filename -Encoding UTF8Microsoft Entra IDのユーザーの属性と一致するusers.csv ファイルの列を選択します。
SAP Cloud Identity Services を使用している場合、既定のマッピングは、Microsoft Entra ID属性
userNameを持つ SAP SCIM 属性userPrincipalNameです。$db_match_column_name = "userName" $azuread_match_attr_name = "userPrincipalName"別の例として、データベースまたはディレクトリを使用している場合、
EMailという名前の列の値が Microsoft Entra 属性userPrincipalNameと同じ値であるデータベース内のユーザーがいる場合があります。$db_match_column_name = "EMail" $azuread_match_attr_name = "userPrincipalName"Microsoft Entra IDでこれらのユーザーの ID を取得します。
次の PowerShell スクリプトでは、前に指定された
$dbusers、$db_match_column_name、$azuread_match_attr_nameの各値を使用します。 Microsoft Entra IDクエリを実行して、ソース ファイル内の各レコードに一致する値を持つ属性を持つユーザーを検索します。 ソース SAP Cloud Identity Services、データベース、またはディレクトリから取得したファイルに多数のユーザーが存在する場合、このスクリプトが完了するまでに数分かかる場合があります。 Microsoft Entra IDに値を持つ属性がなく、containsまたはその他のフィルター式を使用する必要がある場合は、このスクリプトをカスタマイズし、次の手順 11 で別のフィルター式を使用する必要があります。$dbu_not_queried_list = @() $dbu_not_matched_list = @() $dbu_match_ambiguous_list = @() $dbu_query_failed_list = @() $azuread_match_id_list = @() $azuread_not_enabled_list = @() $dbu_values = @() $dbu_duplicate_list = @() foreach ($dbu in $dbusers) { if ($null -ne $dbu.$db_match_column_name -and $dbu.$db_match_column_name.Length -gt 0) { $val = $dbu.$db_match_column_name $escval = $val -replace "'","''" if ($dbu_values -contains $escval) { $dbu_duplicate_list += $dbu; continue } else { $dbu_values += $escval } $filter = $azuread_match_attr_name + " eq '" + $escval + "'" try { $ul = @(Get-MgUser -Filter $filter -All -Property Id,accountEnabled -ErrorAction Stop) if ($ul.length -eq 0) { $dbu_not_matched_list += $dbu; } elseif ($ul.length -gt 1) {$dbu_match_ambiguous_list += $dbu } else { $id = $ul[0].id; $azuread_match_id_list += $id; if ($ul[0].accountEnabled -eq $false) {$azuread_not_enabled_list += $id } } } catch { $dbu_query_failed_list += $dbu } } else { $dbu_not_queried_list += $dbu } }前のクエリの結果を表示します。 エラーまたは一致が見つからないために、SAP Cloud Identity Services のユーザー、データベース、またはディレクトリがMicrosoft Entra IDに配置できなかったかどうかを確認します。
次の PowerShell スクリプトでは、見つからなかったレコードの数を表示します。
$dbu_not_queried_count = $dbu_not_queried_list.Count if ($dbu_not_queried_count -ne 0) { Write-Error "Unable to query for $dbu_not_queried_count records as rows lacked values for $db_match_column_name." } $dbu_duplicate_count = $dbu_duplicate_list.Count if ($dbu_duplicate_count -ne 0) { Write-Error "Unable to locate Microsoft Entra ID users for $dbu_duplicate_count rows as multiple rows have the same value" } $dbu_not_matched_count = $dbu_not_matched_list.Count if ($dbu_not_matched_count -ne 0) { Write-Error "Unable to locate $dbu_not_matched_count records in Microsoft Entra ID by querying for $db_match_column_name values in $azuread_match_attr_name." } $dbu_match_ambiguous_count = $dbu_match_ambiguous_list.Count if ($dbu_match_ambiguous_count -ne 0) { Write-Error "Unable to locate $dbu_match_ambiguous_count records in Microsoft Entra ID as attribute match ambiguous." } $dbu_query_failed_count = $dbu_query_failed_list.Count if ($dbu_query_failed_count -ne 0) { Write-Error "Unable to locate $dbu_query_failed_count records in Microsoft Entra ID as queries returned errors." } $azuread_not_enabled_count = $azuread_not_enabled_list.Count if ($azuread_not_enabled_count -ne 0) { Write-Error "$azuread_not_enabled_count users in Microsoft Entra ID are blocked from sign-in." } if ($dbu_not_queried_count -ne 0 -or $dbu_duplicate_count -ne 0 -or $dbu_not_matched_count -ne 0 -or $dbu_match_ambiguous_count -ne 0 -or $dbu_query_failed_count -ne 0 -or $azuread_not_enabled_count) { Write-Output "You will need to resolve those issues before access of all existing users can be reviewed." } $azuread_match_count = $azuread_match_id_list.Count Write-Output "Users corresponding to $azuread_match_count records were located in Microsoft Entra ID."スクリプトが完了すると、データ ソースのレコードがMicrosoft Entra IDに存在しなかった場合にエラーが表示されます。 アプリケーションのデータ ストアのユーザーのすべてのレコードをMicrosoft Entra IDのユーザーとして配置できない場合は、一致しなかったレコードとその理由を調査する必要があります。
たとえば、アプリケーションのデータ ソースで対応する
mailプロパティが更新されずに、他のユーザーの電子メール アドレスと userPrincipalName がMicrosoft Entra IDで変更されている可能性があります。 または、ユーザーは既に組織を離れているが、まだアプリケーションのデータ ソースに存在する可能性があります。 または、アプリケーションのデータ ソースにベンダーまたはスーパー管理者アカウントがあり、Microsoft Entra IDの特定のユーザーに対応していない場合があります。Microsoft Entra IDに見つからないか、アクティブでサインインできないユーザーがいる場合で、SAP Cloud Identity Services、データベース、またはディレクトリで彼らのアクセス権を確認したり、属性を更新したりしたい場合は、アプリケーションや照合ルールを更新するか、Microsoft Entraでユーザーを更新または作成する必要があります。 変更を加えるための詳細については、「Microsoft Entra ID に一致しなかったアプリケーションの管理マッピングとユーザーアカウント」を参照してください。
Microsoft Entra IDでユーザーを作成するオプションを選択した場合は、次のいずれかを使用してユーザーを一括で作成できます。
- Microsoft Entra 管理センターで大量のユーザーを作成する方法については、CSV ファイル を参照してください。
- New-MgUser コマンドレット
これらの新しいユーザーには、Microsoft Entra IDが後でアプリケーション内の既存のユーザーと一致するために必要な属性と、
userPrincipalName、mailNickname、displayNameなど、Microsoft Entra IDで必要な属性が設定されていることを確認します。userPrincipalNameは、ディレクトリ内のすべてのユーザー間で一意である必要があります。たとえば、
EMailという名前の列の値が Microsoft Entra ユーザー プリンシパル名として使用する値、Alias列の値にMicrosoft Entra IDメール のニックネームが含まれ、Full name列の値にユーザーの表示名が含まれているデータベースにユーザーがいる場合があります。$db_display_name_column_name = "Full name" $db_user_principal_name_column_name = "Email" $db_mail_nickname_column_name = "Alias"その後、このスクリプトを使用して、SAP Cloud Identity Services、データベース、またはディレクトリ内でMicrosoft Entra IDのユーザーと一致しないユーザーに対し、Microsoft Entraのユーザーを作成できます。 このスクリプトを変更して、組織で必要なMicrosoft Entra属性を追加する必要がある場合や、
$azuread_match_attr_nameがmailNicknameでもuserPrincipalNameでもない場合は、Microsoft Entra属性を指定する必要があります。$dbu_missing_columns_list = @() $dbu_creation_failed_list = @() foreach ($dbu in $dbu_not_matched_list) { if (($null -ne $dbu.$db_display_name_column_name -and $dbu.$db_display_name_column_name.Length -gt 0) -and ($null -ne $dbu.$db_user_principal_name_column_name -and $dbu.$db_user_principal_name_column_name.Length -gt 0) -and ($null -ne $dbu.$db_mail_nickname_column_name -and $dbu.$db_mail_nickname_column_name.Length -gt 0)) { $params = @{ accountEnabled = $false displayName = $dbu.$db_display_name_column_name mailNickname = $dbu.$db_mail_nickname_column_name userPrincipalName = $dbu.$db_user_principal_name_column_name passwordProfile = @{ Password = -join (((48..90) + (96..122)) * 16 | Get-Random -Count 16 | % {[char]$_}) } } try { New-MgUser -BodyParameter $params } catch { $dbu_creation_failed_list += $dbu; throw } } else { $dbu_missing_columns_list += $dbu } }不足しているユーザーをMicrosoft Entra IDに追加したら、手順 7 のスクリプトをもう一度実行します。 次に、手順 8 のスクリプトを実行します。 エラーが報告されていないことを確認します。
$dbu_not_queried_list = @() $dbu_not_matched_list = @() $dbu_match_ambiguous_list = @() $dbu_query_failed_list = @() $azuread_match_id_list = @() $azuread_not_enabled_list = @() $dbu_values = @() $dbu_duplicate_list = @() foreach ($dbu in $dbusers) { if ($null -ne $dbu.$db_match_column_name -and $dbu.$db_match_column_name.Length -gt 0) { $val = $dbu.$db_match_column_name $escval = $val -replace "'","''" if ($dbu_values -contains $escval) { $dbu_duplicate_list += $dbu; continue } else { $dbu_values += $escval } $filter = $azuread_match_attr_name + " eq '" + $escval + "'" try { $ul = @(Get-MgUser -Filter $filter -All -Property Id,accountEnabled -ErrorAction Stop) if ($ul.length -eq 0) { $dbu_not_matched_list += $dbu; } elseif ($ul.length -gt 1) {$dbu_match_ambiguous_list += $dbu } else { $id = $ul[0].id; $azuread_match_id_list += $id; if ($ul[0].accountEnabled -eq $false) {$azuread_not_enabled_list += $id } } } catch { $dbu_query_failed_list += $dbu } } else { $dbu_not_queried_list += $dbu } } $dbu_not_queried_count = $dbu_not_queried_list.Count if ($dbu_not_queried_count -ne 0) { Write-Error "Unable to query for $dbu_not_queried_count records as rows lacked values for $db_match_column_name." } $dbu_duplicate_count = $dbu_duplicate_list.Count if ($dbu_duplicate_count -ne 0) { Write-Error "Unable to locate Microsoft Entra ID users for $dbu_duplicate_count rows as multiple rows have the same value" } $dbu_not_matched_count = $dbu_not_matched_list.Count if ($dbu_not_matched_count -ne 0) { Write-Error "Unable to locate $dbu_not_matched_count records in Microsoft Entra ID by querying for $db_match_column_name values in $azuread_match_attr_name." } $dbu_match_ambiguous_count = $dbu_match_ambiguous_list.Count if ($dbu_match_ambiguous_count -ne 0) { Write-Error "Unable to locate $dbu_match_ambiguous_count records in Microsoft Entra ID as attribute match ambiguous." } $dbu_query_failed_count = $dbu_query_failed_list.Count if ($dbu_query_failed_count -ne 0) { Write-Error "Unable to locate $dbu_query_failed_count records in Microsoft Entra ID as queries returned errors." } $azuread_not_enabled_count = $azuread_not_enabled_list.Count if ($azuread_not_enabled_count -ne 0) { Write-Warning "$azuread_not_enabled_count users in Microsoft Entra ID are blocked from sign-in." } if ($dbu_not_queried_count -ne 0 -or $dbu_duplicate_count -ne 0 -or $dbu_not_matched_count -ne 0 -or $dbu_match_ambiguous_count -ne 0 -or $dbu_query_failed_count -ne 0 -or $azuread_not_enabled_count -ne 0) { Write-Output "You will need to resolve those issues before access of all existing users can be reviewed." } $azuread_match_count = $azuread_match_id_list.Count Write-Output "Users corresponding to $azuread_match_count records were located in Microsoft Entra ID."
既存のMicrosoft Entra ユーザーが必要な属性を持っていることを確認する
自動ユーザー プロビジョニングを有効にする前に、sap Cloud Identity Services にアクセスする必要Microsoft Entra IDユーザーを決定する必要があります。その後、それらのユーザーがMicrosoft Entra IDで必要な属性を持ち、それらの属性が SAP Cloud Identity Services の予想されるスキーマにマップされていることを確認する必要があります。
- 既定では、Microsoft Entra ユーザー
userPrincipalName属性の値は、SAP Cloud Identity Services のuserName属性とemails[type eq "work"].value属性の両方にマップされます。 ユーザーのメール アドレスがユーザー プリンシパル名と異なる場合は、このマッピングを変更する必要があります。 - 会社の郵便番号の形式が会社の国または地域と一致しない場合、SAP Cloud Identity Services では、
postalCode属性の値が無視されることがあります。 - 既定では、Microsoft Entra属性
countryは SAP Cloud Identity Servicesaddresses[type eq "work"].countryフィールドにマップされます。country属性の値が 2 文字の ISO 3166 国コードでない場合、SAP Cloud Identity Services でそれらのユーザーを作成できない可能性があります。 詳細については、「 countries.properties」を参照してください。 - 既定では、Microsoft Entra属性
departmentは SAP Cloud Identity Servicesurn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department属性にマップされます。 Microsoft Entraユーザーがdepartment属性の値を持っている場合、それらの値は SAP Cloud Identity Services で既に構成されている部門と一致する必要があります。そうしないと、ユーザーの作成または更新が失敗します。 詳細については、 departments.properties を参照してください。 Microsoft Entraユーザーのdepartment値が SAP 環境内の値と一致しない場合は、ユーザーを割り当てる前に、Microsoft Entraの部門の値を更新するか、SAP Cloud Identity Services で許可されている部門の値を更新するか、マッピングを削除します。 - SAP Cloud Identity Services の SCIM エンドポイントでは、いくつかの属性を特定の形式にする必要があります。 これらの属性とその特定の形式の詳細については、ここを参照してください。
Microsoft Entra IDで SAP Cloud Identity Services アプリケーションにユーザーを割り当てる
Microsoft Entra IDでは、assignments という概念を使用して、選択したアプリへのアクセスを受け取るユーザーを決定します。 自動ユーザー プロビジョニングのコンテキストで、Scope の設定値が 割り当てられたユーザーとグループのみを同期するの場合、Microsoft Entra IDでそのアプリケーションのアプリケーション ロールに割り当てられているユーザーとグループのみが SAP Cloud Identity Services と同期されます。 SAP Cloud Identity Services にユーザーを割り当てるときは、有効なアプリケーション固有ロール (使用可能な場合) を割り当てダイアログで選択する必要があります。 既定のアクセス ロールのユーザーは、プロビジョニングから除外されます。 現在、SAP Cloud Identity Services で使用可能なロールは [ユーザー] のみです。
アプリケーションに対してプロビジョニングが既に有効になっている場合は、アプリケーションにさらにユーザーを割り当てる前に、アプリケーション プロビジョニングが 検疫 されていないことを確認します。 先に進む前に、検疫の原因となっている問題をすべて解決します。
SAP Cloud Identity Services に存在し、Microsoft Entra IDでアプリケーションにまだ割り当てられていないユーザーを確認します
前の手順では、SAP Cloud Identity Services のユーザーも Microsoft Entra ID のユーザーとして存在するかどうかを評価しました。 ただし、Microsoft Entra ID 内のすべてのユーザーがアプリケーションのロールに現在割り当てられているとは限りません。 そこで、次のステップでは、アプリケーション ロールに割り当てられていないユーザーがいないかを確認します。
PowerShell を使用して、アプリケーションのサービスプリンシパルIDを検索します。
たとえば、エンタープライズ アプリケーションの名前が
SAP Cloud Identity Servicesである場合は、次のコマンドを入力します。$azuread_app_name = "SAP Cloud Identity Services" $azuread_sp_filter = "displayName eq '" + ($azuread_app_name -replace "'","''") + "'" $azuread_sp = Get-MgServicePrincipal -Filter $azuread_sp_filter -AllMicrosoft Entra IDで現在アプリケーションに割り当てられているユーザーを取得します。
これは前のコマンドで設定した
$azuread_sp変数に基づいています。$azuread_existing_assignments = @(Get-MgServicePrincipalAppRoleAssignedTo -ServicePrincipalId $azuread_sp.Id -All)SAP Cloud Identity Services と Microsoft Entra ID の両方に既に存在するユーザーのユーザー ID の一覧を、Microsoft Entra IDのアプリケーションに現在割り当てられているユーザーと比較します。 このスクリプトは、前のセクションで設定した
$azuread_match_id_list変数に基づいてビルドされています:$azuread_not_in_role_list = @() foreach ($id in $azuread_match_id_list) { $found = $false foreach ($existing in $azuread_existing_assignments) { if ($existing.principalId -eq $id) { $found = $true; break; } } if ($found -eq $false) { $azuread_not_in_role_list += $id } } $azuread_not_in_role_count = $azuread_not_in_role_list.Count Write-Output "$azuread_not_in_role_count users in the application's data store aren't assigned to the application roles."アプリケーション ロールに割り当てられているユーザーが0人でない場合、つまりすべてのユーザーがアプリケーション ロールに割り当てられていることを示します。これは、Microsoft Entra IDとSAP Cloud Identity Services間で共通のユーザーがいなかったことを示しているため、変更は必要ありません。 ただし、SAP Cloud Identity Services に既に存在する 1 人以上のユーザーが現在アプリケーション ロールに割り当てられていない場合は、手順を続行し、アプリケーションのロールのいずれかに追加する必要があります。
アプリケーションのサービスプリンシパルの
Userの役割を選択します。$azuread_app_role_name = "User" $azuread_app_role_id = ($azuread_sp.AppRoles | where-object {$_.AllowedMemberTypes -contains "User" -and $_.DisplayName -eq "User"}).Id if ($null -eq $azuread_app_role_id) { write-error "role $azuread_app_role_name not located in application manifest"}SAP Cloud Identity Services と Microsoft Entra に既に存在し、現在アプリケーションにロールの割り当てがないユーザーに対して、アプリケーション ロールの割り当てを作成します。
foreach ($u in $azuread_not_in_role_list) { $res = New-MgServicePrincipalAppRoleAssignedTo -ServicePrincipalId $azuread_sp.Id -AppRoleId $azuread_app_role_id -PrincipalId $u -ResourceId $azuread_sp.Id }変更がMicrosoft Entra ID内に反映されるまで 1 分待ちます。
次のMicrosoft Entraプロビジョニング サイクルでは、Microsoft Entra プロビジョニング サービスによって、アプリケーションに割り当てられているユーザーの表現と SAP Cloud Identity Services の表現が比較され、SAP Cloud Identity Services ユーザーがMicrosoft Entra IDの属性を持つよう更新されます。
残りのユーザーを割り当てて初期同期を監視する
テストが完了し、ユーザーが SAP Cloud Identity Services に正常にプロビジョニングされ、既存の SAP Cloud Identity Services ユーザーがアプリケーション ロールに割り当てられると、ここの手順のいずれかに従って、追加の許可されているユーザーを SAP Cloud Identity Services アプリケーションに割り当てることができます:
- Microsoft Entra 管理センター で個々のユーザーをアプリケーションに割り当てることができます。
- 前のセクションに示すように、PowerShell コマンドレット
New-MgServicePrincipalAppRoleAssignedToを使用して個々のユーザーをアプリケーションに割り当てることができます。または、 - 組織がMicrosoft Entra ID ガバナンスのライセンスを持っている場合は、アクセスの割り当てを自動化するためのエンタイトルメント管理ポリシーを展開することもできます。
ユーザーがアプリケーション ロールに割り当てられ、プロビジョニングのスコープに入ると、Microsoft Entra プロビジョニング サービスによって SAP Cloud Identity Services にプロビジョニングされます。 初期同期は後続の同期よりも実行に時間がかかることに注意してください。これは、Microsoft Entra プロビジョニング サービスが実行されている限り、約 40 分ごとに発生します。
ユーザーがプロビジョニングされているのが表示されない場合は、ユーザーがプロビジョニングされない問題に関するトラブルシューティング ガイドの手順を確認します。 次に、Microsoft Entra 管理センター または Graph API を使用してプロビジョニング ログを確認します。 ログを状態 [失敗] でフィルター処理します。 DuplicateTargetEntries の ErrorCode でエラーが発生した場合、これはプロビジョニングの一致ルールのあいまいさを示し、各Microsoft Entra ユーザーが 1 人のアプリケーション ユーザーと一致するように、照合に使用されるMicrosoft Entraユーザーまたはマッピングを更新する必要があります。 次に、ログをアクション [作成] と状態 [スキップ済み] でフィルター処理します。 ユーザーがNotEffectivelyEntitledのSkipReasonコードでスキップされた場合、これはMicrosoft Entra IDのユーザーアカウントが一致しなかったことを示している可能性があります。なぜなら、ユーザーアカウントの状態がDisabledであったからです。
シングル サインオンの構成
SAP Cloud Identity Services のシングル サインオンに関する記事で説明されている手順に従って、 SAP Cloud Identity Services に対して SAML ベースのシングル サインオンを有効にすることもできます。 シングル サインオンは自動ユーザー プロビジョニングとは別に構成できますが、これらの 2 つの機能は相補的な関係にあります。
プロビジョニングを監視する
Synchronization Details セクションを使用すると、進行状況を監視し、リンクをクリックしてプロビジョニング アクティビティ レポートを取得できます。このレポートには、MICROSOFT ENTRA プロビジョニング サービスによって SAP Cloud Identity Services に対して実行されたすべてのアクションが記載されています。 また、Microsoft Graph API を使用してプロビジョニング プロジェクトを監視することもできます。
Microsoft Entra プロビジョニング ログを読み取る方法の詳細については、「自動ユーザー アカウント プロビジョニングに関するレポートを参照してください。
アプリケーション ロールの割り当てを維持する
アプリケーションに割り当てられているユーザーがMicrosoft Entra IDで更新されると、それらの変更は SAP Cloud Identity Services に自動的にプロビジョニングされます。
Microsoft Entra ID ガバナンスがある場合は、Microsoft Entra IDの SAP Cloud Identity Services のアプリケーション ロールの割り当ての変更を自動化し、ユーザーが組織に参加するときに割り当てを追加または削除したり、ロールを離れたり変更したりできます。
- アプリケーション ロールの割り当ての 1 回限りの、または定期的なアクセス レビューを実行できます。
- このアプリケーション用のエンタイトルメント管理アクセス パッケージを作成することができます。 また、ユーザーにアクセス権を割り当てるポリシーは、ユーザー要求時に管理者によって、ルールに基づいて自動的に、またはライフサイクル ワークフローを通じて設定することもできます。
SAP Cloud Identity Services SCIM 2.0 エンドポイントを使用するように SAP Cloud Identity Services アプリケーションを更新する
2025 年 9 月Microsoft、SAP Cloud Identity Services の SCIM 2.0 コネクタがリリースされました。このコネクタでは、SAP Cloud Identity Services へのグループ プロビジョニングとプロビジョニング解除、カスタム拡張機能属性、OAuth 2.0 クライアント資格情報の付与のサポートが追加されました。
以下の手順を完了すると、SAP Cloud Identity Services コネクタを既に使用していたお客様は、SCIM 1.0 エンドポイントから SCIM 2.0 エンドポイントに切り替えることができます。
Microsoft Entra 管理センターに少なくとも Cloud アプリケーション管理者としてサインインします。
Entra ID > Enterprise Apps > SAP Cloud Identity Services に移動します。
[ プロパティ ] セクションで、オブジェクト ID をコピーします。
新しい Web ブラウザー ウィンドウで、https://developer.microsoft.com/graph/graph-explorer に移動し、アプリが追加されるMicrosoft Entra テナントの管理者としてサインインします。
使用されているアカウントに正しいアクセス許可があることを確認します。 この変更を行うには、アクセス許可 "Directory.ReadWrite.All" が必要です。
以前にアプリから選択したオブジェクト ID を使用して、次のコマンドを実行します。
GET https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs/
- 前の例の
GET要求の応答本文から "ID" 値を取得し、次のコマンドを実行し、"[job-id]" をGET要求の ID 値に置き換えます。 この値の形式は "sapcloudidentityservices.xxxxxxxxxxxxxxx.xxxxxxxxxxxxxxx" である必要があります。
DELETE https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs/[job-id]
- Microsoft Graph エクスプローラーで、次のコマンドを実行します。 "[object-id]" を、3 番目の手順からコピーしたサービス プリンシパル ID (オブジェクト ID) に置き換えます。
POST https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs { "templateId": "sapcloudidentityservices" }
最初の Web ブラウザー ウィンドウに戻り、アプリケーションの [プロビジョニング] タブ を 選択します。 構成がリセットされます。 ジョブ ID が "sapcloudidentityservices" で始まれば、アップグレードが成功したことを確認できます。
[管理者資格情報] セクションのテナント URL を次のように更新します。
https://<tenantID>.accounts.ondemand.com/scim、試用版の場合はhttps://<tenantid>.trial-accounts.ondemand.com/service/scim。アプリケーションに対して行った以前の変更 (認証の詳細、スコープ フィルター、カスタム属性マッピング) を復元し、プロビジョニングを再度有効にします。
注
前の設定を復元できないと、SAP Cloud Identity Services で属性 (name.formatted など) が予期せず更新される可能性があります。 プロビジョニングを有効にする前に、必ず構成を確認してください。
変更ログ
- 2025 年 9 月 30 日 – SCIM 2.0 エンドポイントを使用する SAP Cloud Identity Services コネクタの新しいバージョンを一般公開にリリース。 新しいバージョンでは、SAP Cloud Identity Services へのグループ プロビジョニングとプロビジョニング解除、カスタム拡張機能属性、OAuth 2.0 クライアント資格情報の付与がサポートされます。
その他のリソース
- エンタープライズ アプリのユーザー アカウント プロビジョニングの管理
- Microsoft Entra ID におけるアプリケーションアクセスとシングルサインオンとは何ですか?
- SAP アプリケーションへのアクセスを管理する
- 環境内のアプリケーションのアクセスを制御する