기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
CloudWatch 로그에 자격 증명 기반 정책(IAM 정책) 사용
이 섹션에서는 계정 관리자가 IAM 자격 증명(즉 사용자, 그룹, 역할)에 권한 정책을 연결할 수 있는 자격 증명 기반 정책의 예를 제시합니다.
중요
먼저 CloudWatch Logs 리소스에 대한 액세스를 관리하는 데 사용할 수 있는 기본 개념과 옵션을 설명하는 소개 주제를 검토하는 것이 좋습니다. 자세한 내용은 CloudWatch Logs 리소스에 대한 액세스 권한 관리 개요 단원을 참조하십시오.
이 주제는 다음을 다룹니다.
다음은 권한 정책의 예제입니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams" ], "Resource": [ "arn:aws:logs:*:*:*" ] } ] }
이 정책에는 로그 그룹 및 로그 스트림을 생성하고 로그 스트림에 로그 이벤트를 업로드하며 로그 스트림에 대한 세부 사항을 나열할 수 있는 권한을 부여하는 명령문이 하나 포함되어 있습니다.
Resource
값 끝에 와일드카드 문자(*)가 있다는 것은 이 정책 명령문이 어떤 로그 그룹에서든 logs:CreateLogGroup
, logs:CreateLogStream
, logs:PutLogEvents
및 logs:DescribeLogStreams
작업에 대한 권한을 허용한다는 의미입니다. 이 권한을 특정 로그 그룹으로 제한하려면 리소스의 와일드카드 문자(*)를 특정 로그 그룹 ARN로 바꿉니다ARN. IAM 정책 설명의 섹션에 대한 자세한 내용은 IAM 사용 설명서의 IAM 정책 요소 참조를 참조하세요. 모든 CloudWatch 로그 작업을 보여주는 목록은 섹션을 참조하세요CloudWatch 로그 권한 참조.
CloudWatch 콘솔을 사용하는 데 필요한 권한
사용자가 CloudWatch 콘솔에서 CloudWatch 로그로 작업하려면 해당 사용자에게 계정의 다른 AWS 리소스를 설명할 수 있는 최소 권한 집합이 있어야 합니다 AWS . CloudWatch 콘솔에서 CloudWatch 로그를 사용하려면 다음 서비스의 권한이 있어야 합니다.
-
CloudWatch
-
CloudWatch 로그
-
OpenSearch 서비스
-
IAM
-
Kinesis
-
Lambda
-
Amazon S3
최소 필수 권한보다 더 제한적인 IAM 정책을 만들면 콘솔에서는 해당 IAM 정책에 연결된 사용자에 대해 의도대로 작동하지 않습니다. 이러한 사용자가 CloudWatch 콘솔을 계속 사용할 수 있도록 하려면에 설명된 대로 CloudWatchReadOnlyAccess
사용자에게 관리형 정책도 연결합니다AWS CloudWatch 로그에 대한 관리형(미리 정의된) 정책.
AWS CLI 또는 CloudWatch 로그 에만 호출하는 사용자에게 최소 콘솔 권한을 허용할 필요는 없습니다API.
CloudWatch 콘솔을 사용하여 로그 구독을 관리하지 않는 사용자의 콘솔 작업에 필요한 전체 권한 세트는 다음과 같습니다.
cloudwatch:GetMetricData
cloudwatch:ListMetrics
로그:CancelExportTask
로그:CreateExportTask
로그:CreateLogGroup
로그:CreateLogStream
로그:DeleteLogGroup
로그:DeleteLogStream
로그:DeleteMetricFilter
로그:DeleteQueryDefinition
로그:DeleteRetentionPolicy
로그:DeleteSubscriptionFilter
로그:DescribeExportTasks
로그:DescribeLogGroups
로그:DescribeLogStreams
로그:DescribeMetricFilters
로그:DescribeQueryDefinitions
로그:DescribeQueries
로그:DescribeSubscriptionFilters
로그:FilterLogEvents
로그:GetLogEvents
로그:GetLogGroupFields
로그:GetLogRecord
로그:GetQueryResults
로그:PutMetricFilter
로그:PutQueryDefinition
로그:PutRetentionPolicy
로그:StartQuery
로그:StopQuery
로그:PutSubscriptionFilter
로그:TestMetricFilter
사용자가 콘솔을 사용하여 로그 구독도 관리할 경우 다음 권한도 필요합니다.
es:DescribeElasticsearchDomain
es:ListDomainNames
iam:AttachRolePolicy
iam:CreateRole
iam:GetPolicy
iam:GetPolicyVersion
iam:GetRole
iam:ListAttachedRolePolicies
iam:ListRoles
키네시스:DescribeStreams
키네시스:ListStreams
lambda:AddPermission
lambda:CreateFunction
lambda:GetFunctionConfiguration
lambda:ListAliases
lambda:ListFunctions
lambda:ListVersionsByFunction
lambda:RemovePermission
s3:ListBuckets
AWS CloudWatch 로그에 대한 관리형(미리 정의된) 정책
AWS 는에서 생성 및 관리하는 독립 실행형 IAM 정책을 제공하여 많은 일반적인 사용 사례를 처리합니다 AWS. 관리형 정책은 사용자가 필요한 권한을 조사할 필요가 없도록 일반 사용 사례에 필요한 권한을 부여합니다. 자세한 내용은 IAM 사용 설명서의 AWS 관리형 정책을 참조하세요.
계정의 사용자 및 역할에 연결할 수 있는 다음과 같은 AWS 관리형 정책은 CloudWatch 로그에만 해당됩니다.
CloudWatchLogsFullAccess - CloudWatch 로그에 대한 전체 액세스 권한을 부여합니다.
CloudWatchLogsReadOnlyAccess - CloudWatch 로그에 대한 읽기 전용 액세스 권한을 부여합니다.
CloudWatchLogsFullAccess
이 CloudWatchLogsFullAccess 정책은 CloudWatch 로그에 대한 전체 액세스 권한을 부여합니다. 정책에는 권한이 포함되어 cloudwatch:GenerateQuery
있으므로이 정책을 사용하는 사용자는 자연어 프롬프트에서 CloudWatch Logs Insights 쿼리 문자열을 생성할 수 있습니다. 여기에는 Amazon OpenSearch Service 및 IAM에 대한 권한이 포함되어 있어 일부 기능에 대해 CloudWatch Logs를 OpenSearch 서비스와 통합할 수 있습니다. 전체 내용은 다음과 같습니다.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "CloudWatchLogsFullAccess", "Effect": "Allow", "Action": [ "logs:*", "cloudwatch:GenerateQuery", "opensearch:ApplicationAccessAll", "iam:ListRoles", "iam:ListUsers", "aoss:BatchGetCollection", "aoss:BatchGetLifecyclePolicy", "es:ListApplications" ], "Resource": "*" }, { "Sid": "CloudWatchLogsOpenSearchCreateServiceLinkedAccess", "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "arn:aws:iam::*:role/aws-service-role/opensearchservice.amazonaws.com/AWSServiceRoleForAmazonOpenSearchService", "Condition": { "StringEquals": { "iam:AWSServiceName": "opensearchservice.amazonaws.com" } } }, { "Sid": "CloudWatchLogsObservabilityCreateServiceLinkedAccess", "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "arn:aws:iam::*:role/aws-service-role/*/AWSServiceRoleForAmazonOpenSearchServerless", "Condition": { "StringEquals": { "iam:AWSServiceName": "observability.aoss.amazonaws.com" } } }, { "Sid": "CloudWatchLogsCollectionRequestAccess", "Effect": "Allow", "Action": [ "aoss:CreateCollection" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": "CloudWatchOpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsApplicationRequestAccess", "Effect": "Allow", "Action": [ "es:CreateApplication" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/OpenSearchIntegration": [ "Dashboards" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": "OpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsCollectionResourceAccess", "Effect": "Allow", "Action": [ "aoss:DeleteCollection" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] } } }, { "Sid": "CloudWatchLogsApplicationResourceAccess", "Effect": "Allow", "Action": [ "es:UpdateApplication", "es:GetApplication" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/OpenSearchIntegration": [ "Dashboards" ] } } }, { "Sid": "CloudWatchLogsCollectionPolicyAccess", "Effect": "Allow", "Action": [ "aoss:CreateSecurityPolicy", "aoss:CreateAccessPolicy", "aoss:DeleteAccessPolicy", "aoss:DeleteSecurityPolicy", "aoss:GetAccessPolicy", "aoss:GetSecurityPolicy", "aoss:APIAccessAll" ], "Resource": "*", "Condition": { "StringLike": { "aoss:collection": "logs-collection-*" } } }, { "Sid": "CloudWatchLogsIndexPolicyAccess", "Effect": "Allow", "Action": [ "aoss:CreateAccessPolicy", "aoss:DeleteAccessPolicy", "aoss:GetAccessPolicy", "aoss:CreateLifecyclePolicy", "aoss:DeleteLifecyclePolicy" ], "Resource": "*", "Condition": { "StringLike": { "aoss:index": "logs-collection-*" } } }, { "Sid": "CloudWatchLogsStartDirectQueryAccess", "Effect": "Allow", "Action": [ "opensearch:StartDirectQuery" ], "Resource": "arn:aws:opensearch:*:*:datasource/logs_datasource_*" }, { "Sid": "CloudWatchLogsDQSRequestQueryAccess", "Effect": "Allow", "Action": [ "es:AddDirectQueryDataSource" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": "CloudWatchOpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsDQSResourceQueryAccess", "Effect": "Allow", "Action": [ "es:GetDirectQueryDataSource", "es:DeleteDirectQueryDataSource" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] } } }, { "Sid": "CloudWatchLogsPassRoleAccess", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:PassedToService": "directquery.opensearchservice.amazonaws.com" } } }, { "Sid": "CloudWatchLogsAossTagsAccess", "Effect": "Allow", "Action": [ "aoss:TagResource", "es:AddTags" ], "Resource": "arn:aws:aoss:*:*:collection/*", "Condition": { "StringEquals": { "aws:ResourceTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": "CloudWatchOpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsEsApplicationTagsAccess", "Effect": "Allow", "Action": [ "es:AddTags" ], "Resource": "arn:aws:opensearch:*:*:application/*", "Condition": { "StringEquals": { "aws:ResourceTag/OpenSearchIntegration": [ "Dashboards" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": "OpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsEsDataSourceTagsAccess", "Effect": "Allow", "Action": [ "es:AddTags" ], "Resource": "arn:aws:opensearch:*:*:datasource/*", "Condition": { "StringEquals": { "aws:ResourceTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": "CloudWatchOpenSearchIntegration" } } } ] }
CloudWatchLogsReadOnlyAccess
이 CloudWatchLogsReadOnlyAccess 정책은 CloudWatch 로그에 대한 읽기 전용 액세스 권한을 부여합니다. 여기에는이 정책을 사용하는 사용자가 자연어 프롬프트에서 CloudWatch Logs Insights 쿼리 문자열을 생성할 수 있는 cloudwatch:GenerateQuery
권한이 포함됩니다. 내용은 다음과 같습니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:Describe*", "logs:Get*", "logs:List*", "logs:StartQuery", "logs:StopQuery", "logs:TestMetricFilter", "logs:FilterLogEvents", "logs:StartLiveTail", "logs:StopLiveTail", "cloudwatch:GenerateQuery" ], "Resource": "*" } ] }
CloudWatchOpenSearchDashboardsFullAccess
이 CloudWatchOpenSearchDashboardsFullAccess 정책은 OpenSearch 서비스와의 통합을 생성, 관리 및 삭제하고 해당 통합에서 벤딩된 로그 대시보드를 생성 및 관리할 수 있는 액세스 권한을 부여합니다. 자세한 내용은 Amazon OpenSearch Service로 분석 단원을 참조하십시오.
내용은 다음과 같습니다.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "CloudWatchOpenSearchDashboardsIntegration", "Effect": "Allow", "Action": [ "logs:ListIntegrations", "logs:GetIntegration", "logs:DeleteIntegration", "logs:PutIntegration", "logs:DescribeLogGroups", "opensearch:ApplicationAccessAll", "iam:ListRoles", "iam:ListUsers" ], "Resource": "*" }, { "Sid": "CloudWatchLogsOpensearchReadAPIs", "Effect": "Allow", "Action": [ "aoss:BatchGetCollection", "aoss:BatchGetLifecyclePolicy", "es:ListApplications" ], "Resource": "*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com" } } }, { "Sid": "CloudWatchLogsOpensearchCreateServiceLinkedAccess", "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "arn:aws:iam::*:role/aws-service-role/opensearchservice.amazonaws.com/AWSServiceRoleForAmazonOpenSearchService", "Condition": { "StringEquals": { "iam:AWSServiceName": "opensearchservice.amazonaws.com", "aws:CalledViaFirst": "logs.amazonaws.com" } } }, { "Sid": "CloudWatchLogsObservabilityCreateServiceLinkedAccess", "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "arn:aws:iam::*:role/aws-service-role/observability.aoss.amazonaws.com/AWSServiceRoleForAmazonOpenSearchServerless", "Condition": { "StringEquals": { "iam:AWSServiceName": "observability.aoss.amazonaws.com", "aws:CalledViaFirst": "logs.amazonaws.com" } } }, { "Sid": "CloudWatchLogsCollectionRequestAccess", "Effect": "Allow", "Action": [ "aoss:CreateCollection" ], "Resource": "*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:RequestTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": "CloudWatchOpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsApplicationRequestAccess", "Effect": "Allow", "Action": [ "es:CreateApplication" ], "Resource": "*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:RequestTag/OpenSearchIntegration": [ "Dashboards" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": "OpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsCollectionResourceAccess", "Effect": "Allow", "Action": [ "aoss:DeleteCollection" ], "Resource": "*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:ResourceTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] } } }, { "Sid": "CloudWatchLogsApplicationResourceAccess", "Effect": "Allow", "Action": [ "es:UpdateApplication", "es:GetApplication" ], "Resource": "*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:ResourceTag/OpenSearchIntegration": [ "Dashboards" ] } } }, { "Sid": "CloudWatchLogsCollectionPolicyAccess", "Effect": "Allow", "Action": [ "aoss:CreateSecurityPolicy", "aoss:CreateAccessPolicy", "aoss:DeleteAccessPolicy", "aoss:DeleteSecurityPolicy", "aoss:GetAccessPolicy", "aoss:GetSecurityPolicy" ], "Resource": "*", "Condition": { "StringLike": { "aoss:collection": "cloudwatch-logs-*", "aws:CalledViaFirst": "logs.amazonaws.com" } } }, { "Sid": "CloudWatchLogsAPIAccessAll", "Effect": "Allow", "Action": [ "aoss:APIAccessAll" ], "Resource": "*", "Condition": { "StringLike": { "aoss:collection": "cloudwatch-logs-*" } } }, { "Sid": "CloudWatchLogsIndexPolicyAccess", "Effect": "Allow", "Action": [ "aoss:CreateAccessPolicy", "aoss:DeleteAccessPolicy", "aoss:GetAccessPolicy", "aoss:CreateLifecyclePolicy", "aoss:DeleteLifecyclePolicy" ], "Resource": "*", "Condition": { "StringLike": { "aoss:index": "cloudwatch-logs-*", "aws:CalledViaFirst": "logs.amazonaws.com" } } }, { "Sid": "CloudWatchLogsDQSRequestQueryAccess", "Effect": "Allow", "Action": [ "es:AddDirectQueryDataSource" ], "Resource": "arn:aws:opensearch:*:*:datasource/cloudwatch_logs_*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:RequestTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": "CloudWatchOpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsStartDirectQueryAccess", "Effect": "Allow", "Action": [ "opensearch:StartDirectQuery", "opensearch:GetDirectQuery" ], "Resource": "arn:aws:opensearch:*:*:datasource/cloudwatch_logs_*" }, { "Sid": "CloudWatchLogsDQSResourceQueryAccess", "Effect": "Allow", "Action": [ "es:GetDirectQueryDataSource", "es:DeleteDirectQueryDataSource" ], "Resource": "arn:aws:opensearch:*:*:datasource/cloudwatch_logs_*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:ResourceTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] } } }, { "Sid": "CloudWatchLogsPassRoleAccess", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:PassedToService": "directquery.opensearchservice.amazonaws.com", "aws:CalledViaFirst": "logs.amazonaws.com" } } }, { "Sid": "CloudWatchLogsAossTagsAccess", "Effect": "Allow", "Action": [ "aoss:TagResource", "es:AddTags" ], "Resource": "arn:aws:aoss:*:*:collection/*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:ResourceTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] }, "ForAllValues:StringEquals": { "aws:TagKeys": "CloudWatchOpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsEsApplicationTagsAccess", "Effect": "Allow", "Action": [ "es:AddTags" ], "Resource": "arn:aws:opensearch:*:*:application/*", "Condition": { "StringEquals": { "aws:ResourceTag/OpenSearchIntegration": [ "Dashboards" ], "aws:CalledViaFirst": "logs.amazonaws.com" }, "ForAllValues:StringEquals": { "aws:TagKeys": "OpenSearchIntegration" } } }, { "Sid": "CloudWatchLogsEsDataSourceTagsAccess", "Effect": "Allow", "Action": [ "es:AddTags" ], "Resource": "arn:aws:opensearch:*:*:datasource/*", "Condition": { "StringEquals": { "aws:ResourceTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ], "aws:CalledViaFirst": "logs.amazonaws.com" }, "ForAllValues:StringEquals": { "aws:TagKeys": "CloudWatchOpenSearchIntegration" } } } ] }
CloudWatchOpenSearchDashboardAccess
이 CloudWatchOpenSearchDashboardAccess 정책은 Amazon OpenSearch Service 분석을 통해 생성된 벤딩된 로그 대시보드를 볼 수 있는 액세스 권한을 부여합니다. 자세한 내용은 Amazon OpenSearch Service로 분석 단원을 참조하십시오.
중요
이 정책을 부여하는 것 외에도 역할 또는 사용자가 벤딩된 로그 대시보드를 볼 수 있도록 하려면 OpenSearch 서비스와의 통합을 생성할 때 해당 대시보드를 지정해야 합니다. 자세한 내용은 1단계: OpenSearch 서비스와의 통합 생성 단원을 참조하십시오.
의 내용은 다음과 CloudWatchOpenSearchDashboardAccess 같습니다.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "CloudWatchOpenSearchDashboardsIntegration", "Effect": "Allow", "Action": [ "logs:ListIntegrations", "logs:GetIntegration", "logs:DescribeLogGroups", "opensearch:ApplicationAccessAll", "iam:ListRoles", "iam:ListUsers" ], "Resource": "*" }, { "Sid": "CloudWatchLogsOpensearchReadAPIs", "Effect": "Allow", "Action": [ "aoss:BatchGetCollection", "aoss:BatchGetLifecyclePolicy", "es:ListApplications" ], "Resource": "*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com" } } }, { "Sid": "CloudWatchLogsAPIAccessAll", "Effect": "Allow", "Action": [ "aoss:APIAccessAll" ], "Resource": "*", "Condition": { "StringLike": { "aoss:collection": "cloudwatch-logs-*" } } }, { "Sid": "CloudWatchLogsDQSCollectionPolicyAccess", "Effect": "Allow", "Action": [ "aoss:GetAccessPolicy", "aoss:GetSecurityPolicy" ], "Resource": "*", "Condition": { "StringLike": { "aws:CalledViaFirst": "logs.amazonaws.com", "aoss:collection": "cloudwatch-logs-*" } } }, { "Sid": "CloudWatchLogsApplicationResourceAccess", "Effect": "Allow", "Action": [ "es:GetApplication" ], "Resource": "*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:ResourceTag/OpenSearchIntegration": [ "Dashboards" ] } } }, { "Sid": "CloudWatchLogsDQSResourceQueryAccess", "Effect": "Allow", "Action": [ "es:GetDirectQueryDataSource" ], "Resource": "arn:aws:opensearch:*:*:datasource/cloudwatch_logs_*", "Condition": { "StringEquals": { "aws:CalledViaFirst": "logs.amazonaws.com", "aws:ResourceTag/CloudWatchOpenSearchIntegration": [ "Dashboards" ] } } }, { "Sid": "CloudWatchLogsDirectQueryStatusAccess", "Effect": "Allow", "Action": [ "opensearch:GetDirectQuery" ], "Resource": "arn:aws:opensearch:*:*:datasource/cloudwatch_logs_*" } ] }
CloudWatchLogsCrossAccountSharingConfiguration
이 CloudWatchLogsCrossAccountSharingConfiguration 정책은 계정 간에 CloudWatch 로그 리소스를 공유하기 위한 Observability Access Manager 링크를 생성, 관리 및 볼 수 있는 액세스 권한을 부여합니다. 자세한 내용은 CloudWatch 교차 계정 관측성을 참조하세요.
내용은 다음과 같습니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:Link", "oam:ListLinks" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "oam:DeleteLink", "oam:GetLink", "oam:TagResource" ], "Resource": "arn:aws:oam:*:*:link/*" }, { "Effect": "Allow", "Action": [ "oam:CreateLink", "oam:UpdateLink" ], "Resource": [ "arn:aws:oam:*:*:link/*", "arn:aws:oam:*:*:sink/*" ] } ] }
CloudWatch AWS 관리형 정책에 대한 업데이트를 로깅합니다.
이 서비스가 이러한 변경 사항을 추적하기 시작한 이후 CloudWatch 로그에 대한 AWS 관리형 정책 업데이트에 대한 세부 정보를 봅니다. 이 페이지의 변경 사항에 대한 자동 알림을 받으려면 CloudWatch 로그 문서 기록 페이지에서 RSS 피드를 구독하세요.
변경 사항 | 설명 | 날짜 |
---|---|---|
CloudWatchLogsFullAccess - 기존 정책에 대한 업데이트 |
CloudWatch 에 추가된 권한을 로깅합니다CloudWatchLogsFullAccess. 일부 기능에 대해 OpenSearch 서비스와의 CloudWatch 로그 통합을 활성화하기 위해 Amazon OpenSearch Service 및에 대한 권한이 IAM 추가되었습니다. |
2024년 12월 1일 |
CloudWatchOpenSearchDashboardsFullAccess - 새 IAM 정책. |
CloudWatch 로그에 새 IAM 정책가 추가되었습니다CloudWatchOpenSearchDashboardsFullAccess. -이 정책은 OpenSearch 서비스와의 통합을 생성, 관리 및 삭제하고 해당 통합에서 벤딩된 로그 대시보드를 생성, 관리 및 삭제할 수 있는 액세스 권한을 부여합니다. 자세한 내용은 Amazon OpenSearch Service로 분석 단원을 참조하십시오. |
2024년 12월 1일 |
CloudWatchOpenSearchDashboardAccess - 새 IAM 정책. |
CloudWatch 로그에 새 IAM 정책가 추가되었습니다CloudWatchOpenSearchDashboardAccess.이 정책은에서 제공하는 벤딩된 로그 대시보드를 볼 수 있는 액세스 권한을 부여합니다 Amazon OpenSearch Service. 자세한 내용은 Amazon OpenSearch Service로 분석 단원을 참조하십시오. |
2024년 12월 1일 |
CloudWatchLogsFullAccess - 기존 정책에 대한 업데이트 |
CloudWatch 로그가에 권한을 추가했습니다CloudWatchLogsFullAccess. 이 정책을 사용하는 사용자가 자연어 프롬프트에서 CloudWatch Logs Insights 쿼리 문자열을 생성할 수 있도록 |
2023년 11월 27일 |
CloudWatchLogsReadOnlyAccess - 기존 정책에 대한 업데이트 |
CloudWatch 가에 권한을 추가했습니다CloudWatchLogsReadOnlyAccess. 이 정책을 사용하는 사용자가 자연어 프롬프트에서 CloudWatch Logs Insights 쿼리 문자열을 생성할 수 있도록 |
2023년 11월 27일 |
CloudWatchLogsReadOnlyAccess -기존 정책 업데이트 |
CloudWatch 에 추가된 권한을 로깅합니다CloudWatchLogsReadOnlyAccess. 이 정책을 사용하는 사용자가 콘솔을 사용하여 CloudWatch 로그 라이브 테일 세션을 시작하고 중지할 수 있도록 |
2023년 6월 6일 |
CloudWatch Logs는 CloudWatch 로그 로그 그룹을 공유하는 CloudWatch 교차 계정 관찰성 링크를 관리할 수 있도록 새 정책을 추가했습니다. 자세한 내용은 CloudWatch 교차 계정 관측성을 참조하세요. |
2022년 11월 27일 | |
CloudWatchLogsReadOnlyAccess -기존 정책 업데이트 |
CloudWatch 에 추가된 권한을 로깅합니다CloudWatchLogsReadOnlyAccess. 이 정책이 있는 사용자가 콘솔을 사용하여 CloudWatch 교차 계정 관측성으로 소스 계정에서 공유된 데이터를 볼 수 있도록 |
2022년 11월 27일 |
고객 관리형 정책 예
사용자 지정 IAM 정책을 생성하여 CloudWatch 로그 작업 및 리소스에 대한 권한을 허용할 수 있습니다. 해당 권한이 필요한 사용자 또는 그룹에 이러한 사용자 지정 정책을 연결할 수 있습니다.
이 섹션에서는 다양한 CloudWatch 로그 작업에 대한 권한을 부여하는 사용자 정책의 예를 찾을 수 있습니다. 이러한 정책은 CloudWatch 로그 API AWS SDKs, 또는를 사용할 때 작동합니다 AWS CLI.
예제 1: CloudWatch 로그에 대한 전체 액세스 허용
다음 정책은 사용자가 모든 CloudWatch 로그 작업에 액세스할 수 있도록 허용합니다.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "logs:*" ], "Effect": "Allow", "Resource": "*" } ] }
예제 2: CloudWatch 로그에 대한 읽기 전용 액세스 허용
AWS 는 CloudWatch 로그 데이터에 대한 읽기 전용 액세스를 활성화하는 CloudWatchLogsReadOnlyAccess 정책을 제공합니다. 이 정책에는 다음 권한이 포함되어 있습니다.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "logs:Describe*", "logs:Get*", "logs:List*", "logs:StartQuery", "logs:StopQuery", "logs:TestMetricFilter", "logs:FilterLogEvents", "logs:StartLiveTail", "logs:StopLiveTail", "cloudwatch:GenerateQuery" ], "Effect": "Allow", "Resource": "*" } ] }
예제 3: 로그 그룹 하나에 대한 액세스 허용
다음 정책에서는 사용자가 지정된 로그 그룹 하나에서 로그 이벤트를 읽고 쓸 수 있게 허용합니다.
중요
Resource
라인의 로그 그룹 이름 끝에 있는 :*
기호가 있어야 정책이 이 로그 그룹의 모든 로그 스트림에 적용됨을 나타냅니다. :*
기호를 생략하는 경우 정책이 시행되지 않습니다.
{ "Version":"2012-10-17", "Statement":[ { "Action": [ "logs:CreateLogStream", "logs:DescribeLogStreams", "logs:PutLogEvents", "logs:GetLogEvents" ], "Effect": "Allow", "Resource": "arn:aws:logs:us-west-2:123456789012:log-group:SampleLogGroupName:*" } ] }
로그 그룹 수준에서 제어하기 위한 태그 지정 및 IAM 정책 사용
사용자에게 특정 로그 그룹에 대한 액세스 권한을 부여함과 동시에 다른 로그 그룹에 대한 액세스를 방지할 수 있습니다. 이렇게 하려면 로그 그룹에 태그를 지정하고 해당 태그를 참조하는 IAM 정책을 사용하십시오. 로그 그룹에 태그를 적용하려면 logs:TagResource
또는 logs:TagLogGroup
권한이 있어야 합니다. 이는 로그 그룹을 생성할 때 로그 그룹에 태그를 할당하거나 나중에 할당하는 경우 모두에 적용됩니다.
로그 그룹의 태깅에 대한 자세한 내용은 Amazon Logs의 태그 CloudWatch 로그 그룹 섹션을 참조하세요.
로그 그룹에 태그를 지정할 때 특정 태그가 있는 로그 그룹에만 액세스를 허용할 수 있도록 사용자에게 IAM 정책에 대한 권한을 부여할 수 있습니다. 예를 들어, 다음 정책 명령문은 태그 키 Team
에 대한 값이 Green
인 로그 그룹에만 액세스하도록 권한을 부여합니다.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "logs:*" ], "Effect": "Allow", "Resource": "*", "Condition": { "StringLike": { "aws:ResourceTag/Team": "Green" } } } ] }
StopQuery 및 StopLiveTail API 작업은 기존 방식으로 AWS 리소스와 상호 작용하지 않습니다. 즉, 어떤 식으로든 데이터를 반환하거나 데이터를 넣거나 리소스를 수정하지 않습니다. 대신 지정된 라이브 테일 세션 또는 리소스로 분류되지 않는 지정된 CloudWatch Logs Insights 쿼리에서만 작동합니다. 따라서 이러한 작업에 대한 IAM 정책에서 Resource
필드를 지정할 때 다음 예제와 *
같이 Resource
필드 값을 로 설정해야 합니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:StopQuery", "logs:StopLiveTail" ], "Resource": "*" } ] }
IAM 정책 설명 사용에 대한 자세한 내용은 IAM 사용 설명서의 정책을 사용한 액세스 제어를 참조하세요.