演習 - Azure カスタム ロールを表示および管理する

完了

このユニットでは、前の演習で作成した Azure カスタム ロールを表示、更新、削除します。

ポータル内でカスタム ロールを表示する

Azure portal を使用して、サブスクリプションのカスタム ロールを表示してみましょう。

  1. 前の演習で使ったものと同じアカウントを使って、Azure portal にサインインします。

  2. Azure portal の上部で検索して、[サブスクリプション] を選択します。

  3. カスタム ロールに関連付けられているサブスクリプションを選択します。

  4. [アクセス制御 (IAM)]>[ロール] の順に選択します。

    Screenshot that how to get to Access control (IAM) and Roles.

  5. [種類]>[CustomRole] の順に選択します。

    Screenshot that shows custom roles selected from drop-down list.

    組織内のすべてのカスタム ロールの一覧が表示されます。

カスタム ロールを更新する

監視操作のアクセス許可を追加するには、仮想マシン オペレーターのロールを更新する必要があります。 このカスタム ロールを、Microsoft.Insights/diagnosticSettings/ アクションが含まれるように更新します。

  1. Azure portal の右上にある [Cloud Shell] を選択します。

  2. Cloud Shell にコードを入力します。

  3. 下の定義をエディターに貼り付けます。

    {
     "Name": "Virtual Machine Operator",
     "IsCustom": true,
     "Description": "Can monitor and restart virtual machines.",
     "Actions": [
       "Microsoft.Storage/*/read",
       "Microsoft.Network/*/read",
       "Microsoft.Compute/*/read",
       "Microsoft.Compute/virtualMachines/start/action",
       "Microsoft.Compute/virtualMachines/restart/action",
       "Microsoft.Authorization/*/read",
       "Microsoft.ResourceHealth/availabilityStatuses/read",
       "Microsoft.Resources/subscriptions/resourceGroups/read",
       "Microsoft.Insights/alertRules/*",
       "Microsoft.Insights/diagnosticSettings/*",
       "Microsoft.Support/*"
     ],
    "NotActions": [],
    "DataActions": [],
    "NotDataActions": [],
    "AssignableScopes": [
       "/subscriptions/subscriptionId1"
     ]
    }
    
  4. AssignableScopes セクションで、subscriptionId1 を実際のサブスクリプション ID に置き換えます。 前の演習でその値を保存していない場合は、次のコマンドを実行して取得します。

     az account list  --output json | jq '.[] | .id, .name'
    
  5. Cloud Shell ウィンドウの右上にある 3 点メニューから [保存] を選択します (または、Windows では Ctrl + S キー、macOS では CMD + S キーを押します)。

  6. ファイル名として「vm-operator-role-new.json」と入力し、[保存] を選択します。

  7. Cloud Shell ウィンドウの右上にある 3 点メニューから [エディターを閉じる] を選択します (または、Windows では Ctrl + Q キー、macOS では CMD + Q キーを押します)。

  8. 次のコマンドを実行して、仮想マシン オペレーターのカスタム ロールを更新します。

    az role definition update --role-definition vm-operator-role-new.json
    
  9. 次のコマンドを実行して、ロール定義が更新されていることを確認します。

    az role definition list --name "Virtual Machine Operator" --output json | jq '.[] | .permissions[0].actions'
    

カスタム ロールを削除する

カスタム ロールが不要になった場合は、ロールを削除する前に、ロールの割り当てを削除する必要があります。

  1. 次のコマンドを実行して、カスタム ロールのロールの割り当てを削除します。

    az role assignment delete --role "Virtual Machine Operator"
    
  2. 次のコマンドを実行して、カスタム ロール定義を削除します。

    az role definition delete --name "Virtual Machine Operator"
    
  3. 次のコマンドを実行して、ロールがなくなっていることを確認します。 ロールがまだ表示されている場合は、しばらく待ってから、コマンドをもう一度実行してください。

    az role definition list --custom-role-only true