2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

DLPポリシーのコネクタ割り当てをPowerShellを使って行う

Last updated at Posted at 2021-09-21

image.png
前回の投稿で、DLPポリシーをCSVに出力するPowerShellスクリプトについて説明しました。そのCSVを入力情報として新しいDLPポリシーを作成するPowerShellスクリプトを作成しました。

参考(前回の投稿):
DLPポリシーに含まれているコネクタをPowerShellを使って割当先グループ(ビジネス、非ビジネス、ブロック済み)ごとにCSVに一覧出力する
https://qiita.com/wataruf01/items/34d0b44c7178efd74650

使い方

前回の投稿と同じく以下のモジュールを使います。インストール未実施のPCを使ってDLPポリシーの作成を行う場合は、スクリプトの実行前に管理者権限で下記インストールコマンドを実行してください。

モジュールのインストールコマンド
Install-Module -Name Microsoft.PowerApps.Administration.PowerShell
Install-Module -Name Microsoft.PowerApps.PowerShell -AllowClobber

次に、入力用のCSVです。前回の投稿で記載している「GetDLPPolicy.ps1」を使って出力したCSVを用意してください。

必要に応じて、割当先のGroupの変更を行ってください。
※CSVで指定されてないコネクタは自動で"既定のグループ"に割り当てられます。
image.png
以下のソースコードがDLPポリシーの設定用PowerShellスクリプトです。
以下の箇所はテナントによって置き換えてください。
・実行アカウントのID/パスワード
・作成するDLPポリシーの名前
・入力用CSVのファイルパス

DLPポリシーを作成するスクリプト
# 実行アカウント
$adminUserName  = "XXX@XXX.onmicrosoft.com"
$securePassword = "XXX" | ConvertTo-SecureString -AsPlainText -Force
Add-PowerAppsAccount -Username $adminUserName -Password $securePassword

# ポリシーの名前
$newDLPPolicyName = "XXXX"

# 入力用CSVのファイルパス
$inputCSVFilePath = ".\DLPPolicy.csv"

# DLPポリシーを作成する
$newDLPPolicy = New-DlpPolicy -DisplayName $newDLPPolicyName -EnvironmentType "AllEnvironments"

# 入力用CSVからコネクタの情報をインポートする
$csv = Import-Csv -Path $inputCSVFilePath -Encoding UTF8 | select Group,Name,ID,Type
$allConnectors = $csv | Group-Object -Property Group

# CSVから取得したコネクタ情報を割当先ごとにグループ化する
$BusinessDataConnectors    = $allConnectors | Where Name -EQ "BusinessDataGroup" 
$NonBusinessDataConnectors = $allConnectors | Where Name -EQ "NonBusinessDataGroup"  
$BlockedConnectors         = $allConnectors | Where Name -EQ "BlockedGroup"  

# 「ビジネス」グループに割り当てるコネクタを定義する
$BusinessDataConnectorsGroup = `
[PSCustomObject]@{
    classification = "Confidential"
    connectors     = $BusinessDataConnectors.Group | Select Name,ID,Type
}

# 「非ビジネス」グループに割り当てるコネクタを定義する
$NonBusinessDataConnectorsGroup = `
[PSCustomObject]@{
    classification = "General"
    connectors     = $NonBusinessDataConnectors.Group | Select Name,ID,Type
}

# 「ブロック済み」グループに割り当てるコネクタを定義する
$BlockedConnectorsGroup = 
[PSCustomObject]@{
    classification = "Blocked"
    connectors     = $BlockedConnectors.Group | Select Name,ID,Type
}

# 定義したコネクタ情報をDLPポリシーにセットする
$allConnectorGroups = @()
$allConnectorGroups += $BlockedConnectorsGroup
$allConnectorGroups += $BusinessDataConnectorsGroup
$allConnectorGroups += $NonBusinessDataConnectorsGroup
$newDLPPolicy.connectorGroups = $AllConnectorGroups

# DLPポリシーの設定を更新する
Set-DlpPolicy -PolicyName $newDLPPolicy.name -UpdatedPolicy $newDLPPolicy

スクリプトを実行するとDLPポリシーの作成が行われます。

このスクリプトでは下記の設定は割愛しています。そのため、このスクリプトでポリシーを作成したあとにPowerPlatform管理センターで手動で行う等の対応を行ってください。
・既定のグループ
・スコープ
・カスタムコネクタ

参考

この投稿のスクリプトは下記ページを参考にして作成しました。

DLP Policy für Power Platform Services erstellen
https://blog.topedia.com/2020/10/dlp-policy-fur-power-platform-services-erstellen/

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?