SQL Server (Azure Arc の利用が必要) / Azure SQL では、Microsoft Entra ID を使用したログインがサポートされています。
このログインの方法に Privileged Identity Management (PIM) を活用することができますので、情報をまとめておきたいと思います。
昨今のセキュリティ意識の向上に関連してか、Azure SQL 向けのドキュメントとして、次の情報も句会が開始されています。
- New ransomware recovery guidance for Azure SQL Database and Azure SQL Managed Instance
- 概要:ランサムウェア攻撃からAzure SQL DatabaseおよびAzure SQL Managed Instanceを回復する方法
Azure SQL のセキュリティについてはこれらの情報も一読しておくとよいのではないでしょうか。
SQL Server ベースの環境でグループ向けの PIM の活用
SQL Server ベースの環境に対して Entra ID を使用してログインを行う場合、グループ向けの PIM を活用することで、データベースへのログインを PIM の対象とすることができます。
グループ向けの PIM については、次のドキュメントで情報を確認することができます。
このドキュメントの グループ向けの特権アイデンティティ管理 (PIM) に次の記載があります。
グループを使用すると、Microsoft Entra ロール、Azure ロール、Azure SQL、Azure Key Vault、Intune、その他のアプリケーション ロール、サードパーティ アプリケーションなど、さまざまなシナリオへのアクセスを制御できます。
Azure SQL への接続についてもグループ向けの PIM のワークロードとして提示されており、Azure Arc で接続した SQL Server についても対象とすることができます。
データベースへのログインの PIM を使用する場合、次のような対応を行います。
- グループに対してメンバーの割り当てを行うための PIM の設定を追加する
- データベースのログイン (or ユーザー) に Entra ID グループを追加する
このような作業を実施することで、データベースのログインに PIM を使用することができます。
グループに対してメンバーの割り当てを行うための PIM の設定を追加する
前述のとおりグループの PIM を設定することで、SQL Server ベースの環境のログインに対して、PIM の設定を行います。
データベースのログインで使用するグループに対して PIM の設定を行います。
1 点注意が必要なのは、グループを Privileged Identity Management に取り込む に記載されている次の内容です。
グループは、いったん管理されると、管理から除外することはできません。 これにより、別のリソース管理者が PIM 設定を削除することを防ぎます。 Microsoft Entra ID からグループが削除された場合、グループが PIM for Groups オプションから削除されるまでに最大 24 時間かかる場合があります。
グループに PIM を設定した場合、PIM の設定を編集することはできますが、PIM の管理対象外にするということはできないため、PIM を設定したグループについては、PIM の管理を削除することができないというのは意識しておく必要があります。
グループに対しての PIM は次の設定で有効化できます。
- Entra ID で空のグループを作成する
- Entra ID でグループのメンバーとしてユーザーの設定は行いせん。メンバーの追加は PIM で実施します。
- Azure Portal の「Privileged Identity Management」-「管理」-「グループ」から PIM で管理するグループを選択する
- 「管理」-「設定」-「メンバー」-「編集」を選択し、PIM の設定を行う
- 「管理」-「割り当て」-「割り当ての追加」を選択し、「ロールの選択」から「Member」を選択し、グループに追加する Entra ID ユーザーを指定する
- 「割り当ての種類」に「対象」を選択し、PIM をアクティブ化できるように設定する
これで、グループのメンバーとしてアクティブ化することができる PIM が設定できます。
該当のグループのメンバーとして動作させたい場合には、対象となるユーザーで Azure Portal にアクセスし、「Privileged Identity Management」-「自分のロール」-「アクティブ化」-「グループ」から、対象のグループのアクティブ化を行うことができます。
データベースのログイン (or ユーザー) に Entra ID グループを追加する
データベースのログイン / ユーザーには、Entra ID グループを指定することができます。
これらのプリンシパルを作成する際に 「FROM EXTERNAL PROVIDER」を指定して、Entra ID グループを指定することで、グループのメンバーがデータベースにログインできるようにすることができます。
これは、通常のログインの追加方法と同様ですので、PIM を使用する場合でも通常の方法と同様でデータベースにプリンシパルの追加を行います。
これで、PIM を使用したデータベースのログインの準備は完了です。
PIM をアクティブ化して、グループのメンバーとなっていない場合は、データベースにログインすることはできませんが、アクティブ化することで該当のグループのメンバーとなりますので、データベースでグループへのアクセスが許可されていれば、アクティブ化されている状態であればデータベースにログインすることが可能となります。
運用操作で使用するユーザーのような常にログインできる状態にしておく必要はなく、操作するタイミングだけログインが有効化できれば良いユーザーであれば PIM を活用するということも検討できるのではないでしょうか。
Azure Arc で接続した SQL Server であれば、オンプレミスの SQL Server でも PIM を活用することができますので、オンプレミスの SQL Server の保護としても活用できます。