アクションを使用すると、環境内の変化にすばやく対応できます。たとえば、1 か月 $200 以上のコストを費やしている Azure 仮想マシンを停止して割り当て解除するアクションを構成できます。ここでは、ポリシーによって仮想マシンが追跡され、1 か月あたり $200 以上のコスト増加が特定されます。ポリシーに関連付けられたアクションは、ポリシーによって特定される仮想マシンの停止や割り当て解除などの修正措置を実施します。
アクションは、次のような点で役立ちます。
アクションは、自身で、またはポリシーと組み合わせて動作できます。後者の場合、ポリシーは運用上の基準から逸脱した内容を特定し、アクションはそれらの逸脱の内容に応じて修正措置を実施するのに役立ちます。VMware Aria Cost プラットフォームの次の部分から Azure インフラストラクチャを管理するアクションを有効にできます。
Azure 仮想マシン (VM) を管理するための次のアクションを 1 つ以上構成します。
VMware Aria Cost プラットフォームで Azure アクションを使用するには、各 Azure サービス プリンシパルにカスタム ロールを関連付けます。VMware Aria Cost は、ユーザーに代わってアクションを実行する際に、このロールを想定します。
VMware Aria Cost は、サービス プリンシパル レベルでアクションを有効にします。アクションは、各サービス プリンシパルに関連付けられているカスタム ロールを使用して実行されます。Azure PowerShell を使用して、各サービス プリンシパルにカスタム ロールを関連付けます。
カスタム ロールを関連付けるサービス プリンシパルごとに管理者権限があることを確認します。
Azure アクションを有効にするサービス プリンシパルの横にある [有効化] ボタンをクリックします。そのサービス プリンシパル向けにカスタマイズされた PowerShell スクリプトが表示されます。デフォルトでは、VMware Aria Cost は PowerShell スクリプトに組み込みの Azure Contributor ロールを割り当てます。このロールで実行できるアクションの詳細については、ここ をクリックしてください。
既定の Contributor ロールよりも制限の厳しいロールを VMware Aria Cost に割り当てたい場合は、独自のロールを作成します。次に例を示します。
$role = Get-AzureRmRoleDefinition "Contributor"
$role.Id = $null
$role.Name = "CHTActions"
$role.Description = "Grants access to Actions"
$role.AssignableScopes.Clear()
$role.Actions.Clear()
$role.Actions.Add("Microsoft.Compute/*/write")
$role.Actions.Add("Microsoft.Compute/*/action")
$role.Actions.Add("Microsoft.ClassicCompute/*/write")
$role.Actions.Add("Microsoft.ClassicCompute/*/action")
$role.Actions.Add("Microsoft.Sql/*/write")
$role.Actions.Add("Microsoft.Sql/*/action")
$role.Actions.Add("Microsoft.Storage/*/write")
$role.Actions.Add("Microsoft.Storage/*/action")
$role.Actions.Add("Microsoft.ClassicStorage/*/write")
$role.Actions.Add("Microsoft.ClassicStorage/*/action")
$role.NotActions.Add("*/Delete")
New-AzureRmRoleDefinition -Role $role
その他の例については、Azure PowerShell を使用したロール ベースのアクセス制御の管理 を参照してください。
サービス プリンシパルのために VMware Aria Cost で作成されたスクリプトを実行します。独自のロールを作成した場合は、スクリプトの Contributor
を、作成したロールの名前に置き換えます。
アクションをポリシーに関連付けて、ポリシー条件が true に評価されたときにアクションが実行されるようにします。
すべての資産タイプについて、次のアクションを実行できます。
待機機能に基づいてアクションをずらすことができます。たとえば、仮想マシンを停止したり、JIRA 課題を作成したりできます。また、E メールを使用して、これらのアクションをユーザーに通知することもできます。アクションを構成する一連のイベントは次のように作成できます。1.Azure 仮想マシンを停止して割り当て解除を行います。2.JIRA 課題を作成します。3.DevOps に E メールを送信します。
一連のイベントが正常に実行されるようにするには、ルールの ルールのテスト ボタンをクリックします。
アクションとポリシーの関連付けの詳細については、ルールの構成 を参照してください。
トレースと責任を追加するために、承認プロセスを通じて Azure アクションを実行できます。アクションがトリガされると、承認者は E メール通知を受信します。承認者はそのアクションを受け入れ可能な場合、E メールを通じて承認できます。他の承認者がプロセスの一部になっている場合、その後順次、次の承認者に通知が送信されます。すべての承認者が署名している場合、VMware Aria Cost はアクションを実行します。
VMware Aria Cost プラットフォームで使用可能な標準 Azure アクションでは、デフォルトでは承認プロセスが必要ありません。1 つ以上の標準アクションを組み合わせたカスタム アクションを作成し、そのアクションに承認者を関連付けます。
Azure アクションをポリシーに関連付けるだけでなく、VMware Aria Cost プラットフォームで Azure アクションを手動で実行することもできます。
仮想マシンの適正サイジング レポート([推奨事項] > [仮想マシンの適正サイジング])では、各行に アクション ドロップダウンが関連付けられています。
これは適正サイジング レポートであるため、ここで実行できるアクションの 1 つとして、Azure 仮想マシンのサイズ変更 が考えられます。アクション ドロップダウンからこのオプションをクリックし、サイズを変更する仮想マシンのサイズを選択します。
アクションの実行 をクリックします。VMware Aria Cost は、仮想マシンが属するサービス プリンシパルに関連付けられているカスタム ロールの権限を使用して、仮想マシンのサイズを変更します。
CIS Azure Foundations ポリシーは、Center for Internet Security (CIS) セキュリティ ベンチマーク CIS Microsoft Azure Foundations Benchmark v1.3.0 のチェックを実行します。このポリシーは、Azure アカウント、サービス、およびリソースを監視できます。CIS ベンチマークに基づいて問題を特定し、セキュリティを向上させる方法を推奨します。
VMware Aria Cost はこのポリシーを管理し、追加の CIS ベンチマークを満たすために定期的に更新します。このポリシーのルールは、特定の制約でカスタマイズできます。デフォルト ポリシーでルールを有効または無効にすることもできます。
CIS Azure Foundations ポリシーを実行するには、VMware Aria Cost は多数のサービスの資産メタデータを収集する必要があります。
これらのサービスについて報告するには、VMware Aria Cost に Azure クラウドへの追加のアクセス権が必要です。
VMware Aria Cost はメタデータにのみアクセスします。機密データへのアクセスや収集は行われません。
VMware Aria Cost が CIS Azure Foundations ポリシーに必要なメタデータを収集できるようにするには、VMware Aria Cost サービス プリンシパルの Active Directory ユーザーにリーダー ロールを割り当てます。
VMware Aria Cost では、Azure クラウドが CIS ベンチマークに準拠しているかどうかを確認するために、Azure Key Vault のキーとシークレット メタデータにアクセスする必要があります。
$subs = Get-AzureRmSubscription
$client_id = 'client id of service principal'
foreach ($sub in $subs) {Set-AzureRmContext -SubscriptionId $sub.SubscriptionId
$key_vaults = Get-AzureRmKeyVault
foreach ($key_vault in $key_vaults) {Set-AzureRmKeyVaultAccessPolicy -VaultName $key_vault.VaultName -ServicePrincipalName $client_id -PermissionsToKeys get,list -PermissionsToSecrets get,list } }
client id of service principal
を Azure サービス プリンシパルのクライアント ID に置き換えます。VMware Aria Cost プラットフォームでクライアント ID を特定するには、セットアップ > アカウント > Azure サービス プリンシパル の順に移動します。ポリシーには、1 つまたは複数のポリシー ブロックが含まれており、それぞれに Azure CIS ベンチマークに対するコンプライアンスを確認する特定のルールが含まれています。
ステータス を 有効 に切り替えて、ポリシーを保存 をクリックします。
CIS Azure Foundations ポリシーを有効にすると、その中のすべてのルールが有効になり、デフォルトの重要度が割り当てられます。CIS Azure Foundations ポリシーに基づく監視からの推奨事項は、1 時間以内に使用可能です。推奨事項は毎日表示されます。
CIS Azure Foundations ポリシーの推奨事項は、特定のセキュリティの問題の内容とそれに対処するために実行できるアクションを理解するのに役立ちます。これらの推奨事項は、健全性チェックのパルス レポートにも表示されます。
Azure CIS Foundations ポリシーをカスタマイズする場合は、特定の制約内でポリシーを編集できます。または、ポリシーのコピーを変更することもできます。ただし、その場合、VMware Aria Cost がデフォルトのポリシーに CIS ベンチマークを追加しても、作成したコピーは更新されません。
CIS Azure Foundations ポリシーを有効にすると、トップ レベルの組織のセキュリティの脆弱性のみがチェックされます。ポリシーをサブ組織に適用するには、ポリシーを複製し、適用するサブ組織を指定します。
表示されるダイアログ ボックスで、複製したポリシーに名前を付け、適用先のサブ組織を選択します。
元のポリシーに追加したアクションは、サブ組織にはコピーされません。