ユーザーのロールとアクセス許可
Microsoft Defender for Cloud では Azure のロールベースのアクセス制御 (Azure RBAC) を使用して、組み込みロールを提供します。 これらのロールを Azure のユーザー、グループ、サービスに割り当てることで、ロールで定義されているアクセス権に従ってユーザーにリソースへのアクセス権を付与できます。
Defender for Cloud はリソースの構成を評価して、セキュリティの問題と脆弱性を特定します。 Defender for Cloud では、サブスクリプションまたはリソースが属するリソース グループに所有者、共同作業者、または閲覧者のいずれかのロールが割り当てられているときに、リソースに関連した情報のみを閲覧できます。
組み込みロールに加えて、Defender for Cloud に固有のロールが 2 つあります。
- セキュリティ閲覧者: このロールに属しているユーザーには Defender for Cloud に対する読み取り専用のアクセス権があります。 レコメンデーション、警告、セキュリティ ポリシー、セキュリティの状態を閲覧できますが、変更することはできません。
- セキュリティ管理者: このロールに属しているユーザーは、セキュリティ閲覧者と同じアクセス許可を持ち、さらにセキュリティ ポリシーを更新したり、アラートと推奨事項を無視したりすることもできます。
タスクを実行するために必要となる最小限の権限ロールをユーザーに割り当てることをお勧めします。
たとえば、何も操作を実行せずにリソースのセキュリティ正常性情報のみを閲覧する必要があるユーザーには、閲覧者ロールを割り当てることができます。 閲覧者ロールを持つユーザーは、レコメンデーションまたは編集ポリシーを適用できます。
ルールと許可されているアクション
次の表は、Defender for Cloud でのロールと許可されているアクションを示しています。
操作 | Security Reader / Reader |
Security Admin | 共同作成者 / 所有者 | 共同作成者 | 所有者 |
---|---|---|---|---|---|
(リソース グループ レベル) | (サブスクリプション レベル) | (サブスクリプション レベル) | |||
イニシアティブを追加する、または割り当てる (規制コンプライアンス標準を含む) | - | ✔ | - | - | ✔ |
セキュリティ ポリシーを編集する | - | ✔ | - | - | ✔ |
Microsoft Defender プランを有効または無効にする | - | ✔ | - | ✔ | ✔ |
アラートを無視する | - | ✔ | - | ✔ | ✔ |
リソースに対するセキュリティ レコメンデーションの適用 (Fix を使用) |
- | - | ✔ | ✔ | ✔ |
アラートと推奨事項を表示する | ✔ | ✔ | ✔ | ✔ | ✔ |
セキュリティの推奨事項を除外する | - | ✔ | - | - | ✔ |
メール通知を構成する | - | ✔ | ✔ | ✔ | ✔ |
Note
ここで述べられている 3 つのロールは Defender のプランを有効または無効にするのに十分ですが、プランのすべての機能を有効にするには所有者ロールが必要です。
監視コンポーネントのデプロイに必要な特定のロールは、デプロイする拡張機能によって異なります。 コンポーネント監視の詳細についてはこちらをご覧ください。
エージェントと拡張機能を自動的にプロビジョニングするために使用されるロール
セキュリティ管理者ロールが Defender for Cloud プランで使用されるエージェントと拡張機能を自動的にプロビジョニングできるよう、Defender for Cloud は Azure Policy と同様の方法でポリシーの修復を使用します。 修復を使用するには、Defender for Cloud でサブスクリプション レベルでロールを割り当てるサービス プリンシパル (マネージド ID とも呼ばれる) を作成する必要があります。 たとえば、Defender for Containers プランのサービス プリンシパルは次のとおりです。
サービス プリンシパル | ロール |
---|---|
Azure Kubernetes Service (AKS) セキュリティ プロファイルをプロビジョニングする Defender for Containers | * Kubernetes 拡張機能共同作成者 *共同作成者 * Azure Kubernetes Service 共同作成者 * Log Analytics 共同作成者 |
Arc 対応 Kubernetes をプロビジョニングする Defender for Containers | * Azure Kubernetes Service 共同作成者 * Kubernetes 拡張機能共同作成者 *共同作成者 * Log Analytics 共同作成者 |
Kubernetes 用の Azure Policy アドオンをプロビジョニングする Defender for Containers | * Kubernetes 拡張機能共同作成者 *共同作成者 * Azure Kubernetes Service 共同作成者 |
Arc 対応 Kubernetes 用の Policy 拡張機能をプロビジョニングする Defender for Containers | * Azure Kubernetes Service 共同作成者 * Kubernetes 拡張機能共同作成者 *共同作成者 |
AWS でのアクセス許可
アマゾン ウェブ サービス (AWS) コネクターをオンボードすると、Defender for Cloud によってロールが作成され、AWS アカウントにアクセス許可が割り当てられます。 次の表は、AWS アカウントの各プランによって割り当てられるロールとアクセス許可を示しています。
Defender for Cloud プラン | 作成されるロール | AWS アカウントに割り当てられるアクセス許可 |
---|---|---|
Defender クラウド セキュリティ態勢管理 (CSPM) | CspmMonitorAws | AWS リソースのアクセス許可を検出するには、次を除くすべてのリソースの読み取りを行ってください。 consolidatedbilling:* freetier:* invoicing:* payments:* billing:* tax:* cur:* |
Defender CSPM Defender for Servers |
DefenderForCloud-AgentlessScanner | ディスク スナップショットを作成およびクリーンアップするには (タグによってスコープ指定) "CreatedBy": "Microsoft Defender for Cloud" アクセス許可: ec2:DeleteSnapshot ec2:ModifySnapshotAttribute ec2:DeleteTags ec2:CreateTags ec2:CreateSnapshots ec2:CopySnapshot ec2:CreateSnapshot ec2:DescribeSnapshots ec2:DescribeInstanceStatus EncryptionKeyCreation kms:CreateKey へのアクセス許可 kms:ListKeys EncryptionKeyManagement kms:TagResource へのアクセス許可 kms:GetKeyRotationStatus kms:PutKeyPolicy kms:GetKeyPolicy kms:CreateAlias kms:TagResource kms:ListResourceTags kms:GenerateDataKeyWithoutPlaintext kms:DescribeKey kms:RetireGrant kms:CreateGrant kms:ReEncryptFrom |
Defender CSPM Defender for Storage |
SensitiveDataDiscovery | AWS アカウントで S3 バケットを検出するためのアクセス許可、S3 バケット内のデータにアクセスするための Defender for Cloud スキャナーのアクセス許可 S3 読み取り専用 KMS 暗号化解除 kms:Decrypt |
CIEM | DefenderForCloud-Ciem DefenderForCloud-OidcCiem |
Ciem Discovery のアクセス許可 sts:AssumeRole sts:AssumeRoleWithSAML sts:GetAccessKeyInfo sts:GetCallerIdentity sts:GetFederationToken sts:GetServiceBearerToken sts:GetSessionToken sts:TagSession |
Defender for Servers | DefenderForCloud-DefenderForServers | JIT ネットワーク アクセスを構成するためのアクセス許可: ec2:RevokeSecurityGroupIngress ec2:AuthorizeSecurityGroupIngress ec2:DescribeInstances ec2:DescribeSecurityGroupRules ec2:DescribeVpcs ec2:CreateSecurityGroup ec2:DeleteSecurityGroup ec2:ModifyNetworkInterfaceAttribute ec2:ModifySecurityGroupRules ec2:ModifyInstanceAttribute ec2:DescribeSubnets ec2:DescribeSecurityGroups |
Defender for Containers | DefenderForCloud-Containers-K8s | EKS クラスターを一覧表示し、EKS クラスターからデータを収集するためのアクセス許可 eks:UpdateClusterConfig eks:DescribeCluster |
Defender for Containers | DefenderForCloud-DataCollection | Defender for Cloud によって作成された CloudWatch ログ グループへのアクセス許可 logs:PutSubscriptionFilter logs:DescribeSubscriptionFilters logs:DescribeLogGroups logs:PutRetentionPolicy Defender for Cloud によって作成された SQS キューを使用するためのアクセス許可 sqs:ReceiveMessage sqs:DeleteMessage |
Defender for Containers | DefenderForCloud-Containers-K8s-cloudwatch-to-kinesis | Defender for Cloud によって作成された Kinesis Data Firehose 配信ストリームにアクセスするためのアクセス許可 firehose:* |
Defender for Containers | DefenderForCloud-Containers-K8s-kinesis-to-s3 | Defender for Cloud によって作成された S3 バケットにアクセスするためのアクセス許可 s3:GetObject s3:GetBucketLocation s3:AbortMultipartUpload s3:GetBucketLocation s3:GetObject s3:ListBucket s3:ListBucketMultipartUploads s3:PutObject |
Defender for Containers Defender CSPM |
MDCContainersAgentlessDiscoveryK8sRole | EKS クラスターからデータを収集するためのアクセス許可。 EKS クラスターを更新して IP 制限をサポートし、EKS クラスターの iamidentitymapping を作成する "eks:DescribeCluster" "eks:UpdateClusterConfig*" |
Defender for Containers Defender CSPM |
MDCContainersImageAssessmentRole | ECR および ECR Public からイメージをスキャンするためのアクセス許可。 AmazonEC2ContainerRegistryReadOnly AmazonElasticContainerRegistryPublicReadOnly AmazonEC2ContainerRegistryPowerUser AmazonElasticContainerRegistryPublicPowerUser |
Defender for Servers | DefenderForCloud-ArcAutoProvisioning | SSM を使用してすべての EC2 インスタンスに Azure Arc をインストールするアクセス許可 ssm:CancelCommand ssm:DescribeInstanceInformation ssm:GetCommandInvocation ssm:UpdateServiceSetting ssm:GetServiceSetting ssm:GetAutomationExecution ec2:DescribeIamInstanceProfileAssociations ec2:DisassociateIamInstanceProfile ec2:DescribeInstances ssm:StartAutomationExecution iam:GetInstanceProfile iam:ListInstanceProfilesForRole ssm:GetAutomationExecution ec2:DescribeIamInstanceProfileAssociations ec2:DisassociateIamInstanceProfile ec2:DescribeInstances ssm:StartAutomationExecution iam:GetInstanceProfile iam:ListInstanceProfilesForRole |
Defender CSPM | DefenderForCloud-DataSecurityPostureDB | AWS アカウント内の RDS インスタンスの検出、RDS インスタンス スナップショットの作成のためのアクセス許可 - RDS DB/クラスターをすべて一覧表示する - すべての DB/クラスター スナップショットを一覧表示する - すべての DB/クラスター スナップショットをコピーする - プレフィックス defenderfordatabases を使用して DB/クラスター スナップショットを削除/更新する - すべての KMS キーを一覧表示する - ソース アカウントの RDS に対してのみすべての KMS キーを使用する - タグ プレフィックス DefenderForDatabases を持つ KMS キーを一覧表示する - KMS キーのエイリアスを作成する RDS インスタンスの検出に必要なアクセス許可 rds:DescribeDBInstances rds:DescribeDBClusters rds:DescribeDBClusterSnapshots rds:DescribeDBSnapshots rds:CopyDBSnapshot rds:CopyDBClusterSnapshot rds:DeleteDBSnapshot rds:DeleteDBClusterSnapshot rds:ModifyDBSnapshotAttribute rds:ModifyDBClusterSnapshotAttribute rds:DescribeDBClusterParameters rds:DescribeDBParameters rds:DescribeOptionGroups kms:CreateGrant kms:ListAliases kms:CreateKey kms:TagResource kms:ListGrants kms:DescribeKey kms:PutKeyPolicy kms:Encrypt kms:CreateGrant kms:EnableKey kms:CancelKeyDeletion kms:DisableKey kms:ScheduleKeyDeletion kms:UpdateAlias kms:UpdateKeyDescription |
GCP でのアクセス許可
Google Cloud Platforms (GCP) コネクターをオンボードすると、Defender for Cloud によってロールが作成され、GCP プロジェクトにアクセス許可が割り当てられます。 次の表は、GCP プロジェクトの各プランによって割り当てられるロールとアクセス許可を示しています。
Defender for Cloud プラン | 作成されるロール | AWS アカウントに割り当てられるアクセス許可 |
---|---|---|
Defender CSPM | MDCCspmCustomRole | これらのアクセス許可は、CSPM ロールに対して、組織内のリソースの検出とスキャンを許可します。 組織、プロジェクト、フォルダーの閲覧をロールに許可します。 resourcemanager.folders.get resourcemanager.folders.list resourcemanager.folders.getIamPolicy resourcemanager.organizations.get resourcemanager.organizations.getIamPolicy storage.buckets.getIamPolicy 新しいプロジェクトの自動プロビジョニング プロセスと削除されたプロジェクトの消去を許可します。 resourcemanager.projects.get resourcemanager.projects.list ロールに対して、リソースの検出に使用される Google Cloud サービスの有効化を許可します。 serviceusage.services.enable IAM ロールの作成と一覧表示に使用されます。 iam.roles.create iam.roles.list ロールに対して、サービス アカウントとして機能し、リソースへのアクセス許可を取得することを許可します。 iam.serviceAccounts.actAs ロールに対して、プロジェクトの詳細の表示と、共通のインスタンス メタデータの設定を許可します。 compute.projects.get compute.projects.setCommonInstanceMetadata |
Defender for Servers | microsoft-defender-for-servers azure-arc-for-servers-onboard |
コンピューティング エンジンのリソースを取得および一覧表示するための読み取り専用アクセス: compute.viewer iam.serviceAccountTokenCreator osconfig.osPolicyAssignmentAdmin osconfig.osPolicyAssignmentReportViewer |
Defender for Database | defender-for-databases-arc-ap | Defender for Database ARC 自動プロビジョニングに対するアクセス許可 compute.viewer iam.workloadIdentityUser iam.serviceAccountTokenCreator osconfig.osPolicyAssignmentAdmin osconfig.osPolicyAssignmentReportViewer |
Defender CSPM Defender for Storage |
data-security-posture-storage | GCP ストレージ バケットを検出し、GCP ストレージ バケット内のデータにアクセスするための Defender for Cloud スキャナーのアクセス許可 storage.objects.list storage.objects.get storage.buckets.get |
Defender CSPM Defender for Storage |
data-security-posture-storage | GCP ストレージ バケットを検出し、GCP ストレージ バケット内のデータにアクセスするための Defender for Cloud スキャナーのアクセス許可 storage.objects.list storage.objects.get storage.buckets.get |
Defender CSPM | microsoft-defender-ciem | 組織のリソースに関する詳細を取得するためのアクセス許可。 resourcemanager.folders.getIamPolicy resourcemanager.folders.list resourcemanager.organizations.get resourcemanager.organizations.getIamPolicy storage.buckets.getIamPolicy |
Defender CSPM Defender for Servers |
MDCAgentlessScanningRole | エージェントレス ディスク スキャンのアクセス許可: compute.disks.createSnapshot compute.instances.get |
Defender CSPM Defender for Servers |
cloudkms.cryptoKeyEncrypterDecrypter | CMEK で暗号化されたディスクのスキャンをサポートするために、既存の GCP KMS ロールへのアクセス許可が付与されます |
Defender CSPM Defender for Containers |
mdc-containers-artifact-assess | GAR および GCR からイメージをスキャンするためのアクセス許可。 artifactregistry.reader storage.objectViewer |
Defender for Containers | mdc-containers-k8s-operator | GKE クラスターからデータを収集するためのアクセス許可。 IP 制限をサポートするように GKE クラスターを更新します。 container.viewer MDCGkeClusterWriteRole: container.clusters.update* MDCGkeContainerResponseActionsRole: container.pods.update container.pods.delete container.networkPolicies.create container.networkPolicies.update container.networkPolicies.delete |
Defender for Containers | microsoft-defender-containers | Cloud Pub/Sub トピックにログをルーティングするためのログ シンクを作成および管理するためのアクセス許可。 logging.sinks.list logging.sinks.get logging.sinks.create logging.sinks.update logging.sinks.delete resourcemanager.projects.getIamPolicy resourcemanager.organizations.getIamPolicy iam.serviceAccounts.get iam.workloadIdentityPoolProviders.get |
Defender for Containers | ms-defender-containers-stream | ログが pub sub にログを送信できるようにするアクセス許可: pubsub.subscriptions.consume pubsub.subscriptions.get |
次のステップ
この記事では、Defender for Cloud で Azure ロールベースのアクセス制御を使用してアクセス許可をユーザーに割り当て、ロールごとに許可されているアクションを特定する方法について説明します。 サブスクリプションのセキュリティ状態を監視するために必要なロールの割り当てについて理解したら、セキュリティ ポリシーを編集し、推奨事項を適用して、次の方法を学習してください。