Azure Active DirectoryとServiceNowの連携を検証してみたのでメモ

# 本紙の目的

- 昨今運用系のアプリのレガシーマイグレをやっているが、そのマイグレ先としてServiceNowを考えている
- この一貫でServiceNowとAzure Acitve Directory(以下AAD)の連携について調べていたので、その調査内容を備忘録的に残したい


# やったこと（流れ）

基本的に [こちら](https://docs.microsoft.com/ja-jp/azure/active-directory/saas-apps/servicenow-tutorial) に従って進めていく。

1. Azure無料アカウントやServiceNow Developer Instanceの準備
2. AADへのユーザー作成
3. ServiceNowへのSSOプラグインインストール
4. SSO設定(Azure側, ServiceNow側)
5. 接続テスト
6. その他気になった点の検証


上記の1については普通にドキュメントがあるのでここでは割愛。ちなみに参考として以下。

- [Azure 無料アカウント FAQ](https://azure.microsoft.com/ja-jp/free/free-account-faq/)
- [ServiceNow Personal Developer Instance](https://qiita.com/d_karunwork82/items/dcf9453eb442936c68b2)


ということでその次から記載する。


# AADへのユーザー作成

まずはAADのユーザーを直接指定して、それをServiceNowにプロビジョニングし、それをベースにSSO出来る状態を目指す。グループやスコープフィルターを利用した、実際のユースケースに近いものは「気になった点の検証」の部分で触れる。

公式ドキュメントは [こちら](https://docs.microsoft.com/ja-jp/azure/active-directory/fundamentals/add-users-azure-active-directory) を参照。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/3a6f0203-89ed-3294-aa54-0f97173c904e.png)|
|:--|

AAD画面の左メニューにある `ユーザー` を選択。


|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/dee7f173-48b1-4623-4e6e-161a8a9362db.png)|
|:--|

`新しいユーザー` をクリック

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/707257b5-06b0-a9d6-67e3-bb86c783d1e3.png)|
|:--|

必須パラメータを踏まえて以下を設定しておく。

- ユーザー名: `keiichi.hikita.servicenow` (@以降は自動選択されている)
- 名前: `Keiichi Hikita (ServiceNow)`
- 初期パスワード: `適当なパスワード`

この状態で、画面下部の `作成` ボタンを押下。


# ServiceNowへのMultiple Provider Single Sign-on Pluginインストール

ドキュメントを見ると、ServiceNow側に `Multiple Provider Single Sign-On` プラグインが必要と書かれている。
なので、Developer Instanceにログインして、上記プラグインをインストールする。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/da024658-6716-8082-427d-57cadf4d8402.png)|
|:--|

1. ServiceNowのFilter Navigatorに `plugin` と入力
2. 表示された画面上部の検索枠に `multiple provider single sign` 等と入力
3. 表示されたプラグインの `Install` ボタンをクリック

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/fd46bb15-dd20-edd1-f835-7e3cd5e82e5d.png)|
|:--|

このような画面が出るので `Activate` を押下。


# SSO設定(AAD側)

## AADにServiceNowをアプリケーションとして追加

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/fb008893-3138-1edd-f3cc-7f2786cd33ba.png)|
|:--|

AADの画面左メニューにある `エンタープライズアプリケーション` を選択。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/bc98c473-06d1-89b2-c4bf-987929ac7c7f.png)|
|:--|

`新しいアプリケーション` を選択。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/8b33c04d-5857-0250-773e-dea72c5026fc.png)|
|:--|

ギャラリーの下の方に `ServiceNow` があるのでこれを選択。
すると画面右側に名前の入力欄が表示される。
今回は `ServiceNow Developer Instance` としておいた。

するとこのような形でServiceNowがアプリケーションとして登録される。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/28e2e135-8401-7c33-8d34-a05f0632b5d2.png)|
|:--|

## シングルサインオンの設定

先程の画面の左メニューで `シングルサインオン` を選択する。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/640fafce-88cd-e89d-3012-a120cce69f9a.png)|
|:--|

表示されたものの中から `SAML` を選択する。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/5b8521ef-07fe-523c-d84f-019018cd9dd2.png)|
|:--|

この画面で **必須** となっているものを入力していく。ドキュメントによると以下を入力することになる。

識別子 (エンティティ ID): `https://<instance-name>.service-now.com`
応答 URL: `https://<instancename>.service-now.com/navpage.do`
サインオン URL: `https://<instancename>.service-now.com/navpage.do`

加えて、以下も入力しておく。

- ログアウト URL: `https://<instancename>.service-now.com/navpage.do`

## SAML署名証明書の設定

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/e82476eb-9461-bbcf-de77-6e95d78e5965.png)|
|:--|

この手順では、後々使うので以下を行っておくように書かれている。

- `アプリのフェデレーション メタデータURL` をコピーしておく
- `証明書 (Base64)` をクリックして証明書をダウンロードしておく

が、一度も使わなかったので割愛で良さそう。

## サインオンの構成

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/f712b6a1-0f7e-e4db-3ca8-e4d9cb0da567.png)|
|:--|

上記のSTEPに表示されている `ステップ バイ ステップの手順を表示` のリンクを選択する。

すると画面右側に以下のような内容が表示される。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/a02f829e-8392-7bfe-db1e-42b1f5055cac.png)|
|:--|

以下を入力する。

- 管理ユーザー名: `admin`
- 管理パスワード: `[Developer Instanceにおけるadminユーザーのパスワード`

入力が完了したら `今すぐ構成` ボタンを押下する。

シングルサインオン構成に成功すると、画面右上にバルーンが表示される。

これが終わったら一旦AADは離れて、ServiceNow側の設定に移る。

# SSO設定(ServiceNow側)

## 基本設定

本来の手順ではここでプラグインをインストールすることになっているが、それは既に終わっているので割愛してその続きから。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/a37e73bd-f4f2-09c9-18f2-f8696947b2a9.png)|
|:--|

1. ServiceNowの左メニューで、 `Multi-Provider SSO > Properties` と選択
2. 右画面のチェックボックスを全てONに
3. `The field on the user table that identifies a user accessing the "User identification" login page. By default, it uses the 'user_name' field.` に `email` と入力
4. `Save` ボタンを押下


|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/7498b873-1415-81d4-b9d5-b6a75109121d.png)|
|:--|

次に以下を実施。

1. 左メニューから `Multi-Provider SSO > Identity Providers` と選択
2. 右ペインが切り替わったら `Microsoft Azure Federated Single Sign-on...` を選択

画面が以下のように切り替わる。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/4bf1cfbc-37e4-b812-48df-bbcab8b33729.png)|
|:--|

この画面において、チュートリアルでは色々URLのコピペ等を実施するように書かれているが、大半ここまでの手順の中で終わっているので改めての実施は不要。

必要な作業としては証明書の設定。
これを行うべく、画面下部の `X.509 Certificates` の横にある `Edit` ボタンを押下。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/5b829014-5bc2-076c-62ec-5fa07d6193b9.png)|
|:--|

左側にある `Microsoft Azure Federated Single Sign-on for ...` を右矢印で追加する。

その後 `Save` を押下。


# ユーザーのプロビジョニング

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/e618f02e-bfff-ed0a-5b97-d83c89f85b70.png)|
|:--|

この後チュートリアルに従うと、画面右上の `Test Connection` ボタンを使ってSingle Sign-Onをテストすることになる。
その前にユーザープロビジョニングをしてしまう方がいいのでそれをやっておく。
（チュートリアルではテスト用のユーザーを専用で作っているが、どのみち必要になるので）

## プロビジョニング対象の選択

一旦AADの画面に戻る。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/d978be05-1f15-825f-a6ac-e7d79a7d6312.png)|
|:--|

この画面で、`ユーザーまたはグループの追加` を選択。（この画面までの遷移はスクショのパンくずを参照）

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/71d123d0-da88-09f7-b864-c8d4453dbece.png)|
|:--|

この画面の意味合いは、「ユーザーやグループを作成する」のではなく、「アプリケーション(ここではServiceNow)にプロビジョニングするユーザーやグループを決定する」という意味になる。

先程作成したユーザーを選択して `選択` -> `割り当て` の順にクリックする。
これで当該ユーザーがプロビジョニングの対象になる。


## プロビジョニング設定

次に、先程選択したグループのプロビジョニング設定を行う。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/66b38b6c-1a8f-997c-5093-0af9dbc9d76e.png)|
|:--|

画面左の `プロビジョニング` を選択。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/16ad393a-dc97-799b-8c23-5a9a46e6bf40.png)|
|:--|

以下を入力する。

- プロビジョニングモード: `自動`
- インスタンス名: `インスタンスホスト名(dev*****)`
- 通知用メール: `デプロイ結果の通知先メールアドレス`

一旦この状態で保存する。

どうやらこの状態ではプロビジョニング機能自体はONになっていないようなので、もう一度同じ画面を開く。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/25ec1865-604e-e751-cd91-693892e13073.png)|
|:--|

画面右上の `プロビジョニングの編集` を選択。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/103c8c19-6de5-6b2d-8192-4e69123b6b11.png)|
|:--|

画面下部の `プロビジョニング状態` を `オン` にする。

デフォルトだと40分サイクルでプロビジョニングされるらしい。

プロビジョニングが成功すると以下のような画面が表示される。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/ec208086-46a2-fc89-bafb-b929f7e4c2a6.png)|
|:--|


# 接続のテスト

## うまく行かない編

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/e618f02e-bfff-ed0a-5b97-d83c89f85b70.png)|
|:--|

これでユーザーのデプロイが終わったので接続のテストが行えるようになる。
改めてこの画面を表示。表示の流れを復習すると以下。

1. 左メニューから `Multi-Provider SSO > Identity Providers` と選択
2. 右ペインが切り替わったら `Microsoft Azure Federated Single Sign-on...` を選択


で、 `Test Connection` を押下する...がこれだと動作しなかった。

ちなみ後述の変更を行い、上手くいった場合が以下。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/7b847bf1-4789-808f-d0f0-91df1dc01ff9.png)|
|:--|

うまく行かない場合、Phase 5/5の `Subject Confirmation Validated` でエラーとなる。
エラーの内容は以下のような形。

```
User: ******** not found
Ensure that the user you are trying the test connection with is present in the system.
Ensure that 'User Field' property value corresponds to the value set in the IDP returned through 'Subject NameID' in the response.
```

調べていくと以下の内容が見えてきた。

- AADにおけるSAML Response上飛んでくる識別ID(Subject > Name ID属性)が `userprincipalname` になっている
  - この属性の値が自分の環境だと異様に長い(130文字程度になっていた)ため、ServiceNow sys_user table側で正しく格納できていない。そもそもメールアドレスとは異なる値になっていた(`#EXT` とかいう文字列も入っていた)
- これとマッチするフィールドをServiceNow側で探すためのフィールドは、前述の手順からsys_user.emailに設定している
- という理由もあり、当然両者がマッチしない

余談としてAADからのプロビジョニングにおいて、ServiceNowのsys_user.emailが飛んでこない(これの原因が現在不明。マッピング的には正しいはずだがうまく行っていないので継続調査)

ちなみにSAMLの仕組みを理解する目的としては、この辺りが大変勉強となった。

- https://techinfoofmicrosofttech.osscons.jp/index.php?SAML%E3%81%AE%E4%BB%95%E6%A7%98%E3%82%92%E8%AA%AD%E3%82%80%E3%80%82
- https://qiita.com/Shinya-Yamaguchi/items/434fab8c39e806e69a88
- https://manual.iij.jp/iid/faq/19644038.html

ということで以下を実施した。


### AADのシングルサインオン設定を一部変更

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/beab4cbe-581d-80e3-a3e3-b624cff3020f.png)|
|:--|

（上記は設定変更後の画面になってしまっており恐縮ですが）のSTEP2上の `編集` を選択し、、、

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/b6e0bdb6-b011-72b2-f13c-02101cf7e83d.png)|
|:--|

`一位のユーザー識別子 (名前 ID)` を `user.mail` に変更する。

### ServiceNow 該当ユーザのemailを手動設定

前節の設定完了後、プロビジョニングが終わるまで待つ。
その後、ServiceNow側で該当ユーザのemailを手動設定する。


ServiceNowの左メニューから `System Security > Users` と選択。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/a17bd604-8aae-cef2-a1c2-004c28597d16.png)|
|:--|

この画面で、該当のユーザーレコードを検索し、 `Email` フィールドをダブルクリックして値を変更する。

これによりSAMLの識別子がメールアドレスとなり、かつそれをServiceNow側でも突合出来るようになったはず。

## うまく行った編

この状態で `Test-Connection`。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/1c9b93b4-50c1-290e-05d3-fddd0e19cc1e.png)|
|:--|

このように `Microsoft サインイン` 画面が出るので、メールアドレスとパスワードを入力して進めていけば無事ログインできるようになった。


これでほぼシングルサインオン環境は整ったと言える。

あとはAuto-Redirect設定とかがあるらしい（動画によると）けど今回あまり関係ないので割愛。

# 実際のユースケースに向けて色々調査

ユーザーを作るたびに手動で割当(＆プロビジョニング)するのは当然嫌なので、特定の属性(等何かしらの目印)を持つユーザーが作成されたら自動でServiceNowにプロビジョニングされるようにしたい。

自分たちの場合、AAD上のユーザーは全社員分予め存在するため、そのユーザーの中からServceNowにプロビジョニングする対象を指定する方法を決めておいて、それを(既に存在するユーザーに)設定したら従って勝手にプロビジョニングされてほしい。

また、逆に不要になったユーザーはServiceNowから削除したい。（Inactiveにするのでも良い）

ということで以下のような内容を確認してみた。

## Q. 割り当てユーザーから削除したユーザーはServiceNow側ではどうなる？

- 2ユーザーを割り当てて一度プロビジョニングをし、
- その後特定のユーザーを割当対象から除外して再度プロビジョニングした場合、
- その除外されたユーザーはServiceNowではどうなるのか？

`A. InActiveになる`

まず最初がこう。2ユーザーを割り当ててプロビジョニングした状態。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/252fb0b7-3820-cc3b-e07d-c8b7959e5e77.png)|
|:--|


ここから割り当てユーザーを削除して次のプロビジョニングが走った状態。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/f160bb75-c67a-0bd1-95c9-250c6eefe4ea.png)|
|:--|

除外したユーザーだけ `Active=false` になっている。



## Q. ユーザーの属性を活用して自動プロビジョニングの対象にできるか？

`A. 可能。方法は大きく2つくらいありそう`

### スコープフィルターを使う方式

例えばグループが自分たちの権限では作成できない・・・みたいな場合(?)に、ある属性が特定の値になっているユーザーをグルーピングしてServiceNow側にプロビジョニングする・・・とかできれば良いのかなと考えた。

プロビジョニングの設定時に、ユーザーの属性等でフィルタを行うことが出来る。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/4a771e51-ff9e-d614-d1e4-a98e2bfed32b.png)|
|:--|

プロビジョニングの画面下部に `スコープ フィルターの追加` というリンクがあるのでこれを選択する。
（とはいえ、単に `編集` 画面に入れれば良いので、このリンクを辿る意味は実はあまり無い）

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/33df266b-01e1-5c6b-fda8-11a0d36f2964.png)|
|:--|

`マッピング` を開いて `Provision Azure Active Directory Users` を選択する。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/416d1c73-d7d5-e88c-f7df-605acb96c997.png)|
|:--|

`ソースオブジェクトスコープ` を選択する。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/6d395e48-5602-f229-ad7b-b66e361aa8b9.png)|
|:--|

この画面上部にある `スコープフィルターの追加` から条件を追加することができ、この条件に合致したものをプロビジョニング対象にすることが出来る。


|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/09b7e79e-056e-e2a0-8b96-08d07bde97c4.png)|
|:--|


例えばこのような形で、 `department` 属性が `servicenow` のユーザーのみをプロビジョニング対象にすることが出来る。(逆に言うと `department` 属性が `servicenow` ではないユーザーは、割り当て対象として一覧に表示されていたとしても、プロビジョニングの対象から除外されるということを意味する)

ということで以下を行ってみる。

- 一旦2ユーザをActiveな状態にプロビジョニングする
- その後上述のスコープフィルターを設定する
- 片方のユーザーのみdepartment属性に `servicenow` を設定する

この状態でプロビジョニングが走ると、もう一方のユーザーは（department=servicenowが設定されていないので） `Active=false` になる。というのが期待値。

結果、その通りの状態となった。(画面は前述のものと変わらないので割愛)

実際には拡張属性（というのをどう使えば良いのかわかっていないが）等を使って同様のことを行うのが良いのかもしれない。


## グループを使う方式

プロビジョニングの対象としてグループを指定することが出来る。
この場合、グループ自体、及びそのメンバーであるユーザーがプロビジョニングされる。
これを利用し、グループにユーザーを追加するだけで自動的にプロビジョニング対象にするというイメージ。

グループの作り方や、ユーザーをグループに所属させる方法は [公式ドキュメント](https://docs.microsoft.com/ja-jp/azure/active-directory/fundamentals/active-directory-groups-create-azure-portal) を参照。

また、グループをプロビジョニング対象にするためにはライセンスを有効化する必要があるので、それについては後述する。


まずServiceNowグループだけをプロビジョニング対象として指定する。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/67b5a212-d383-d850-4c84-d073d0f26308.png)|
|:--|

なお、このグループとユーザーの関係は以下のようになっている。

```
Group-1(ServiceNow Group)
 ├ User-1(keiichi.hikita)
 └ User-2(keiichi.hikita.servicenow)
```

つまり画面でいうと以下。
グループ `ServiceNow` の配下にこれらのユーザーがメンバーとして登録されている状態。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/0829b041-6202-8041-dd75-4c1f63a8754c.png)|
|:--|


この状態で(今回は一旦ServiceNow側からユーザーを全て物理削除し)プロビジョニングを実行すると、ユーザーとグループの関係性を維持したまま、ユーザーとグループの双方がプロビジョニングされた。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/5b06b4dd-c15d-47c9-4caa-5efb6d329503.png)|
|:--|


上の画面の通り、ServiceNow側にGroupがプロビジョニングされ、そのメンバーにユーザー2名が紐付いている。
(Userの名前の連携がうまく行っていないのは一旦無視...)


ちなみにこのグループによるプロビジョニングと、前述のスコープフィルターによるユーザーの絞リ込みの両方が設定されている場合、そのANDが取られる。

#### 例

- Groupをプロビジョニング対象としており、そのグループのメンバーに2ユーザーが居ると仮定する
- うち1ユーザーのみがスコープフィルターを通過可能な状態となっている
- この場合、グループ自体、および1ユーザー(フィルター通過したユーザー)だけがプロビジョニングされる


### 試用ライセンスのアクティベート

Azure試用版のデフォルトの状態だと、後述する手順に記載されている `AADからServiceNowへのグループのプロビジョニング` ができない。
そのため、最初に有効化しておく。


|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/4a34d7dc-65b0-e905-8e3d-82f3980101c5.png)|
|:--|

まずAADの左メニューで `ライセンス` を選択する。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/c8ed9b5e-966e-80b8-2463-c68dad57ed2b.png)|
|:--|

メニューが切り替わるので、 `すべての製品` を選択する。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/a1bc2969-eb2b-bcd5-5a4d-c914d523abde.png)|
|:--|

`試用/購入` を選択する。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/a3f7646b-06bd-b5b4-76b8-c972015b24a3.png)|
|:--|

画面右側に表示された各ライセンスの `アクティブ化` ボタンを押下する。

すると次のようにActivateしたライセンス一覧が表示される。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/b0fdf846-b4bd-2e9f-4c08-434198412b0b.png)|
|:--|

次にこのライセンスを作成したグループに割り当てる。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/6f6aa210-6963-0bcd-59ee-1d3116e92d21.png)|
|:--|

AADのホームから `グループ` を選択。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/d697f343-2ac4-383b-4c41-253471699eb3.png)|
|:--|

ライセンスを割り当てたいグループを選択。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/b7aee7cb-c59c-51f5-3688-6553a99fe021.png)|
|:--|

左メニューの `ライセンス` を選択。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/cd59ea3f-e48b-aab7-4cde-091154f2e5e9.png)|
|:--|

右ペインに表示される `割り当て` を選択。

|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/317673/a5f10fcc-2e3f-7340-d7e7-2853c3923725.png)|
|:--|

割り当てたいライセンスを選択して、画面下部の `保存` を押下。

こうしておくことで、前述の手順でAADからServiceNowへのグループのプロビジョニング(含むユーザー)が出来るようになる。

# まとめ

ServiceNowとAADの連携や、実際のユースケースに向けた検証を行った。

結果は想定していた期待値とほぼ同じ動きをしている。
自分たちのユースケースでは、グループベースのプロビジョニングが有効そう。

一部謎な部分もある(ユーザーのメールアドレスがプロビジョニングされない等）が、そこは追々調べていきたい。