기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
사용자 권한
다음 정책은 사용자가 AWS Management Console AWS Console Mobile Application및 AWS Documentation 사이트를 포함한 AWS 앱 및 웹 사이트에서 Amazon Q Developer의 기능에 액세스할 수 있도록 허용합니다.
Amazon Q Developer에 대한 관리 액세스를 활성화하는 정책은 관리자 권한 섹션을 참조하세요.
IDE 또는 명령줄에서 Amazon Q에 액세스하는 사용자는 IAM 권한이 필요하지 않습니다.
사용자가 Amazon Q Developer Pro 구독을 통해 Amazon Q에 액세스하도록 허용
다음 예시 정책은 Amazon Q Developer Pro 구독을 통해 Amazon Q를 사용할 수 있는 권한을 부여합니다. 이러한 권한이 없으면 사용자는 Amazon Q의 프리 티어에만 액세스할 수 있습니다. Amazon Q와 채팅하거나 다른 Amazon Q 기능을 사용하려면 이 섹션의 예시 정책에서 부여한 것과 같은 추가 권한이 필요합니다.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowGetIdentity",
"Effect": "Allow",
"Action": [
"q:GetIdentityMetaData"
],
"Resource": "*"
},
{
"Sid": "AllowSetTrustedIdentity",
"Effect": "Allow",
"Action": [
"sts:SetContext"
],
"Resource": "arn:aws:sts::*:self"
}
]
}
고객 관리형 키에 대한 Amazon Q 액세스 허용
다음 예제 정책은 Amazon Q가 키에 액세스할 수 있도록 허용하여 고객 관리형 키로 암호화된 기능에 액세스할 수 있는 권한을 사용자에게 부여합니다. 관리자가 암호화를 위해 고객 관리형 키를 설정한 경우 Amazon Q를 사용하려면이 정책이 필요합니다.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "QKMSDecryptGenerateDataKeyPermissions",
"Effect": "Allow",
"Action": [
"kms:Decrypt",
"kms:GenerateDataKey",
"kms:GenerateDataKeyWithoutPlaintext",
"kms:ReEncryptFrom",
"kms:ReEncryptTo"
],
"Resource": [
"arn:aws:kms:us-east-1:{111122223333}:key/[[key_id]]"
],
"Condition": {
"StringLike": {
"kms:ViaService": [
"q.us-east-1.amazonaws.com"
]
}
}
}
]
}
사용자가 Amazon Q와 채팅할 수 있도록 허용
다음 예시 정책은 콘솔에서 Amazon Q와 채팅할 수 있는 권한을 부여합니다.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowAmazonQConversationAccess",
"Effect": "Allow",
"Action": [
"q:StartConversation",
"q:SendMessage",
"q:GetConversation",
"q:ListConversations",
"q:UpdateConversation",
"q:DeleteConversation"
],
"Resource": "*"
}
]
}
사용자가 AWS CloudShell을 통해 Amazon Q CLI를 사용할 수 있도록 허용
다음 예제 정책은 Amazon Q CLI를와 함께 사용할 수 있는 권한을 부여합니다 AWS CloudShell.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codewhisperer:GenerateRecommendations",
"codewhisperer:ListCustomizations"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"q:StartConversation",
"q:SendMessage"
],
"Resource": "*"
}
]
}
다음 예제 정책은 변환을 위한 Amazon Q 명령줄 도구를 사용하여 코드를 변환할 수 있는 권한을 부여합니다.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"qdeveloper:StartAgentSession",
"qdeveloper:ImportArtifact",
"qdeveloper:ExportArtifact",
"qdeveloper:TransformCode"
],
"Resource": "*"
}
]
}
사용자가 Amazon Q로 콘솔 오류를 진단할 수 있도록 허용
다음 예제 정책은 Amazon Q로 콘솔 오류를 진단할 수 있는 권한을 부여합니다.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowAmazonQTroubleshooting",
"Effect": "Allow",
"Action": [
"q:StartTroubleshootingAnalysis",
"q:GetTroubleshootingResults",
"q:StartTroubleshootingResolutionExplanation",
"q:UpdateTroubleshootingCommandResult",
"q:PassRequest",
"cloudformation:GetResource"
],
"Resource": "*"
}
]
}
사용자가 Amazon Q를 사용하여 CLI 명령에서 코드를 생성하도록 허용
다음 예시 정책은 Amazon Q를 사용하여 기록된 CLI 명령에서 코드를 생성할 수 있는 권한을 부여하며, 이를 통해 콘솔 대 코드 기능을 사용할 수 있습니다.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowAmazonQConsoleToCode",
"Effect": "Allow",
"Action": "q:GenerateCodeFromCommands",
"Resource": "*"
}
]
}
사용자가 Amazon Q와 리소스에 대해 채팅할 수 있도록 허용
다음 예제 정책은 리소스에 대해 Amazon Q와 채팅할 수 있는 권한을 부여하고 Amazon Q가 사용자를 대신하여 리소스 정보를 검색하도록 허용합니다. Amazon Q에는 IAM 자격 증명에 권한이 있는 리소스에 액세스할 수 있는 권한만 있습니다.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowAmazonQPassRequest",
"Effect": "Allow",
"Action": [
"q:StartConversation",
"q:SendMessage",
"q:GetConversation",
"q:ListConversations",
"q:UpdateConversation",
"q:DeleteConversation",
"q:PassRequest"
],
"Resource": "*"
},
{
"Sid": "AllowCloudControlReadAccess",
"Effect": "Allow",
"Action": [
"cloudformation:GetResource",
"cloudformation:ListResources"
],
"Resource": "*"
}
]
}
Amazon Q가 사용자를 대신하여 채팅으로 작업을 수행하도록 허용
다음 예시 정책은 Amazon Q와 채팅할 수 있는 권한을 부여하고 Amazon Q가 사용자를 대신하여 작업을 수행하도록 허용합니다. Amazon Q에는 IAM ID가 수행할 수 있는 권한이 있는 작업만 수행할 수 있는 권한이 있습니다.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowAmazonQPassRequest",
"Effect": "Allow",
"Action": [
"q:StartConversation",
"q:SendMessage",
"q:GetConversation",
"q:ListConversations",
"q:UpdateConversation",
"q:DeleteConversation",
"q:PassRequest"
],
"Resource": "*"
}
]
}
Amazon Q가 비용 데이터에 액세스하고 비용 최적화 권장 사항을 제공할 수 있도록 허용
다음 예제 정책은 비용에 대해 Amazon Q와 채팅할 수 있는 권한을 부여하고 Amazon Q가 비용 데이터에 액세스하고 비용 분석 및 최적화 권장 사항을 제공할 수 있도록 허용합니다. 이 정책에는 AWS Cost Explorer AWS Cost Optimization Hub, 및의 관련 권한이 포함됩니다 AWS Compute Optimizer.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowAmazonQChatAndPassRequest",
"Effect": "Allow",
"Action": [
"q:StartConversation",
"q:SendMessage",
"q:GetConversation",
"q:ListConversations",
"q:UpdateConversation",
"q:DeleteConversation",
"q:PassRequest"
],
"Resource": "*"
},
{
"Sid": "AllowCostAnalysis",
"Effect": "Allow",
"Action": [
"ce:GetCostAndUsage",
"ce:GetCostForecast",
"ce:GetTags",
"ce:GetCostCategories",
"ce:GetDimensionValues"
],
"Resource": "*"
},
{
"Sid": "AllowCostOptimization",
"Effect": "Allow",
"Action": [
"cost-optimization-hub:GetRecommendation",
"cost-optimization-hub:ListRecommendations",
"cost-optimization-hub:ListRecommendationSummaries",
"compute-optimizer:GetAutoScalingGroupRecommendations",
"compute-optimizer:GetEBSVolumeRecommendations",
"compute-optimizer:GetEC2InstanceRecommendations",
"compute-optimizer:GetECSServiceRecommendations",
"compute-optimizer:GetRDSDatabaseRecommendations",
"compute-optimizer:GetLambdaFunctionRecommendations",
"compute-optimizer:GetIdleRecommendations",
"compute-optimizer:GetEffectiveRecommendationPreferences",
"ce:GetReservationPurchaseRecommendation",
"ce:GetSavingsPlansPurchaseRecommendation"
],
"Resource": "*"
}
]
}
사용자를 대신하여 특정 작업을 수행할 수 있는 Amazon Q 권한 거부
다음 예시 정책은 Amazon Q와 채팅할 수 있는 권한을 부여하고 Amazon EC2 작업을 제외하고 IAM ID가 수행할 수 있는 권한이 있는 모든 작업을 Amazon Q가 사용자를 대신하여 수행하도록 허용합니다. 이 정책은 aws:CalledVia
전역 조건 키를 사용하여 Amazon Q가 호출할 때만 Amazon EC2 작업이 거부되도록 지정합니다.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"q:StartConversation",
"q:SendMessage",
"q:GetConversation",
"q:ListConversations",
"q:UpdateConversation",
"q:DeleteConversation",
"q:PassRequest"
],
"Resource": "*"
},
{
"Effect": "Deny",
"Action": [
"ec2:*"
],
"Resource": "*",
"Condition": {
"ForAnyValue:StringEquals": {
"aws:CalledVia": ["q.amazonaws.com"]
}
}
}
]
}
사용자를 대신하여 특정 작업을 수행할 수 있는 Amazon Q 권한 허용
다음 예시 정책은 Amazon Q와 채팅할 수 있는 권한을 부여하고 Amazon EC2의 작업을 제외하고 IAM ID가 수행할 수 있는 권한이 있는 모든 작업을 Amazon Q가 사용자를 대신하여 수행할 수 있도록 허용합니다. 이 정책은 IAM ID에 Amazon EC2 작업을 수행할 수 있는 권한을 부여하지만 Amazon Q가 ec2:describeInstances
작업만 수행하도록 허용합니다. 이 정책은 aws:CalledVia
전역 조건 키를 사용하여 Amazon Q가 ec2:describeInstances
만 호출할 수 있고 다른 모든 Amazon EC2 작업은 호출할 수 없도록 지정합니다.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"q:StartConversation",
"q:SendMessage",
"q:GetConversation",
"q:ListConversations",
"q:UpdateConversation",
"q:DeleteConversation",
"q:PassRequest"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"ec2:*"
],
"Resource": "*",
"Condition": {
"ForAnyValue:StringNotEquals": {
"aws:CalledVia": ["q.amazonaws.com"]
}
}
},
{
"Effect": "Allow",
"Action": [
"ec2:describeInstances"
],
"Resource": "*",
"Condition": {
"ForAnyValue:StringEquals": {
"aws:CalledVia": ["q.amazonaws.com"]
}
}
}
]
}
특정 리전에서 사용자를 대신하여 작업을 수행할 수 있는 Amazon Q 권한 허용
다음 예시 정책은 Amazon Q와 채팅할 수 있는 권한을 부여하고 Amazon Q가 사용자를 대신하여 작업을 수행할 때 us-east-1
및 us-west-2
리전에만 호출을 할 수 있도록 허용합니다. Amazon Q는 다른 리전에 호출을 할 수 없습니다. 호출할 수 있는 리전을 지정하는 방법에 대한 자세한 내용은 AWS Identity and Access Management 사용 설명서의 aws:RequestedRegion을 참조하세요.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"q:StartConversation",
"q:SendMessage",
"q:GetConversation",
"q:ListConversations",
"q:UpdateConversation",
"q:DeleteConversation",
"q:PassRequest"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:RequestedRegion": [
"us-east-1",
"us-west-2"
]
}
}
}
]
}
사용자를 대신하여 작업을 수행할 수 있는 Amazon Q 권한 거부
다음 예시 정책은 Amazon Q가 사용자를 대신하여 작업을 수행하는 것을 방지합니다.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "DenyAmazonQPassRequest",
"Effect": "Deny",
"Action": [
"q:PassRequest"
],
"Resource": "*"
}
]
}
사용자가 한 공급자의 플러그인과 채팅할 수 있도록 허용
다음 예제 정책은 플러그인 ARN에서 플러그인 공급자의 이름과 와일드카드 문자()로 지정한 관리자가 구성하는 지정된 공급자의 플러그인과 채팅할 수 있는 권한을 부여합니다*
. 플러그인이 삭제되고 다시 구성된 경우 이러한 권한이 있는 사용자는 새로 구성된 플러그인에 대한 액세스를 유지합니다. 이 정책을 사용하려면 Resource
필드의 ARN에서 다음을 바꿉니다.
-
AWS 리전 -
플러그인이 생성된 AWS 리전 입니다.
-
AWS-account-ID
- 플러그인이 구성된 AWS 계정의 계정 ID입니다.
-
plugin-provider
- , CloudZero
Datadog
또는와 같이 액세스를 허용할 플러그인 공급자의 이름입니다Wiz
. 플러그인 공급자 필드는 대/소문자를 구분합니다.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowAmazonQConversationAccess",
"Effect": "Allow",
"Action": [
"q:StartConversation",
"q:SendMessage",
"q:GetConversation",
"q:ListConversations",
"q:UpdateConversation",
"q:DeleteConversation"
],
"Resource": "*"
},
{
"Sid": "AllowAmazonQPluginAccess",
"Effect": "Allow",
"Action": [
"q:UsePlugin"
],
"Resource": "arn:aws:qdeveloper:us-east-1
:AWS-account-ID
:plugin/plugin-provider
/*"
}
]
}
사용자가 특정 플러그인과 채팅할 수 있도록 허용
다음 예제 정책은 플러그인 ARN에 지정된 특정 플러그인과 채팅할 수 있는 권한을 부여합니다. 플러그인을 삭제하고 다시 구성하면이 정책에서 플러그인 ARN이 업데이트되지 않는 한 사용자는 새 플러그인에 액세스할 수 없습니다. 이 정책을 사용하려면 Resource
필드의 ARN에서 다음을 바꿉니다.
-
AWS 리전 -
플러그인이 생성된 AWS 리전 입니다.
-
AWS-account-ID
- 플러그인이 구성된 AWS 계정의 계정 ID입니다.
-
plugin-provider
- , CloudZero
Datadog
또는와 같이 액세스를 허용할 플러그인 공급자의 이름입니다Wiz
. 플러그인 공급자 필드는 대/소문자를 구분합니다.
-
plugin-ARN
- 액세스를 허용할 플러그인의 ARN입니다.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowAmazonQConversationAccess",
"Effect": "Allow",
"Action": [
"q:StartConversation",
"q:SendMessage",
"q:GetConversation",
"q:ListConversations",
"q:UpdateConversation",
"q:DeleteConversation"
],
"Resource": "*"
},
{
"Sid": "AllowAmazonQPluginAccess",
"Effect": "Allow",
"Action": [
"q:UsePlugin"
],
"Resource": "arn:aws:qdeveloper:AWS-region
:AWS-account-ID
:plugin/plugin-provider
/plugin-ARN
"
}
]
}
Amazon Q에 대한 액세스 거부
다음 예시 정책은 Amazon Q를 사용할 수 있는 모든 권한을 거부합니다.
Amazon Q에 대한 액세스를 거부해도 Amazon Q 아이콘과 채팅 패널은 AWS 콘솔, AWS 웹 사이트, AWS 문서 페이지 또는에 계속 표시됩니다 AWS Console Mobile Application.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "DenyAmazonQFullAccess",
"Effect": "Deny",
"Action": [
"q:*"
],
"Resource": "*"
}
]
}
사용자가 자신의 권한을 볼 수 있도록 허용
이 예제는 IAM 사용자가 자신의 사용자 ID에 연결된 인라인 및 관리형 정책을 볼 수 있도록 허용하는 정책을 생성하는 방법을 보여줍니다. 이 정책에는 콘솔에서 또는 AWS CLI 또는 AWS API를 사용하여 프로그래밍 방식으로이 작업을 완료할 수 있는 권한이 포함됩니다.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ViewOwnUserInfo",
"Effect": "Allow",
"Action": [
"iam:GetUserPolicy",
"iam:ListGroupsForUser",
"iam:ListAttachedUserPolicies",
"iam:ListUserPolicies",
"iam:GetUser"
],
"Resource": ["arn:aws:iam::*:user/${aws:username}"]
},
{
"Sid": "NavigateInConsole",
"Effect": "Allow",
"Action": [
"iam:GetGroupPolicy",
"iam:GetPolicyVersion",
"iam:GetPolicy",
"iam:ListAttachedGroupPolicies",
"iam:ListGroupPolicies",
"iam:ListPolicyVersions",
"iam:ListPolicies",
"iam:ListUsers"
],
"Resource": "*"
}
]
}