Graph APIとPowershellを駆使してPIMの設定を一括登録(準備編)
2020-09-18
azblob://2022/11/11/eyecatch/2020-09-30-pim-graph-api-powershell-prepare-000.jpg

はじめに

この記事ではGraph APIをPowershellで実行するための事前準備「アプリの作成」について説明します。
手順の中で作成するアプリは、PIM(Privileged Identity Management)の処理を実行するために作成しています。
権限の設定を変更すれば別の処理にも応用できます。

本記事の読者層は下記を想定しています。

  • Azure ADを管理している人
  • Graph APIで一括処理を実行したい人
  • Graph APIをPowerShellで実行したい人

アプリの登録

Ⅰ.アプリの新規登録

Azure Portal (https://portal.azure.com) にアクセスし、Azure Active Directoryの「アプリの登録」から「新規登録」を選択します。

Azure Active Directoryのアプリの登録画面

アプリケーションの登録画面に遷移します。
任意の名前を指定して登録します。名前以外はデフォルト値で良いです。
入力が完了したら登録ボタンを押下します。

アプリケーションの登録画面

Ⅱ.アプリの認証設定

Ⅰで実施したアプリケーションの登録が完了すると、アプリケーションの「概要」画面が表示されます。

もしアプリケーションの概要画面にアクセスできなかった場合は、Azure Portalにアクセスしなおして、Azure Active Directoryの「アプリの登録」に遷移します。
アプリの登録画面にⅠで登録したアプリケーション名が表示されますので、アプリ名をクリックしてください。

サイドメニューから「認証」画面に移動し、プラットフォーム構成にある
「+プラットフォームの追加」をクリックします。

作成したアプリケーションの認証画面

画面右側にプラットフォーム構成の選択画面が表示されます。
「モバイルアプリケーションとデスクトップアプリケーション」をクリックします。

デスクトップとデバイスの構成画面が表示されます。
msalから始まるリダイレクトURIにチェックを入れ、「構成」ボタンを押下したら認証設定は完了です。
ここで表示されているリダイレクトURIはアプリ利用時に必要な情報となるため、メモ等にコピーしておいてください。

Ⅲ.アプリのアクセス許可設定

アプリケーションのサイドメニュー「API のアクセス許可」の「+アクセス許可の追加」をクリックします。

APIの一覧が画面右側に表示されるため、その中から「Microsoft Graph」を探してクリックします。

「委任されたアクセスの許可」をクリックして、「アクセス許可を選択する」の下にある検索枠を利用して、
「PrivilegedAccess.ReadWrite.AzureAD」
「Directory.AccessAsUser.All」
上記2つを検索してそれぞれにチェックを入れます。

2つのチェックが完了したら「アクセスの許可を追加」をクリックします。

※ここで別の権限を設定すると別目的のアプリケーションが作成できます。
基本的には1アプリケーションに大量の権限は付与せず、1つの目的のためだけの権限だけ付与することをお勧めします。
※下記参考ページから機能ごとに必要な権限を確認できます。
https://docs.microsoft.com/ja-jp/graph/api/overview?view=graph-rest-1.0
https://docs.microsoft.com/ja-jp/graph/api/overview?view=graph-rest-beta

権限設定が完了したらAPIのアクセス許可画面に戻ります。
次に「<会社名>に管理者の同意を与えます」をクリックし、同意を実施します。

Ⅳ.アプリを利用するために必要な情報取得

同意が完了したら、サイドメニューの「概要」をクリックし
「アプリケーション (クライアント) ID」
「ディレクトリ (テナント) ID」

をメモ等にコピーします。(アプリ利用時に必要な情報です)

アプリケーションの概要画面

まとめ

ここまでの手順で特定の権限を持ったアプリケーションが作成が完了しました。
また、アプリケーションを利用するために必要な情報の

  • リダイレクトURI
  • アプリケーション (クライアント) ID
  • ディレクトリ (テナント) ID


が手元にある状態になっています。
もし足りない情報がありましたら上記名称で本記事を検索して、情報を取得してください。

以上で準備編はおしまいです。

準備した情報は実践編にて利用します。

azblob://2024/03/29/eyecatch/2024-03-29-openai-json-mode-000_0.jpg
2024/03/29
AI/Machine Learning