Autorisations d’administrateur - Amazon Q Developer

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Autorisations d’administrateur

Les politiques suivantes permettent aux administrateurs Amazon Q Developer d’effectuer des tâches administratives dans la console de gestion des abonnements Amazon Q et la console Amazon Q Developer.

Pour connaître les politiques qui autorisent l’utilisation des fonctionnalités d’Amazon Q Developer, consultez Autorisations des utilisateurs.

Administrateurs autorisés à utiliser la console Amazon Q

L’exemple de politique suivant accorde des autorisations pour que l’utilisateur puisse effectuer des actions dans la console Amazon Q. La console Amazon Q est l'endroit où vous configurez l'intégration d'Amazon Q avec AWS IAM Identity Center et AWS Organizations. La plupart des autres tâches liées à Amazon Q Developer doivent être effectuées dans la console Amazon Q Developer. Pour de plus amples informations, veuillez consulter Administrateurs autorisés à utiliser la console Amazon Q Developer.

Note

Le préfixe codewhisperer est un nom hérité d’un service qui a fusionné avec Amazon Q Developer. Pour de plus amples informations, veuillez consulter Changement de nom d’Amazon Q Developer : résumé des modifications.

JSON
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "organizations:ListAWSServiceAccessForOrganization", "organizations:DisableAWSServiceAccess", "organizations:EnableAWSServiceAccess", "organizations:DescribeOrganization" ], "Resource":[ "*" ] }, { "Effect":"Allow", "Action":[ "sso:ListApplications", "sso:ListInstances", "sso:DescribeRegisteredRegions", "sso:GetSharedSsoConfiguration", "sso:DescribeInstance", "sso:CreateInstance", "sso:CreateApplication", "sso:PutApplicationAuthenticationMethod", "sso:PutApplicationAssignmentConfiguration", "sso:PutApplicationGrant", "sso:PutApplicationAccessScope", "sso:DescribeApplication", "sso:DeleteApplication", "sso:GetSSOStatus", "sso:CreateApplicationAssignment", "sso:DeleteApplicationAssignment", "sso:UpdateApplication" ], "Resource":[ "*" ] }, { "Effect":"Allow", "Action":[ "sso-directory:DescribeUsers", "sso-directory:DescribeGroups", "sso-directory:SearchGroups", "sso-directory:SearchUsers", "sso-directory:DescribeGroup", "sso-directory:DescribeUser", "sso-directory:DescribeDirectory" ], "Resource":[ "*" ] }, { "Effect":"Allow", "Action":[ "signin:ListTrustedIdentityPropagationApplicationsForConsole", "signin:CreateTrustedIdentityPropagationApplicationForConsole" ], "Resource":[ "*" ] }, { "Effect":"Allow", "Action":[ "codewhisperer:ListProfiles", "codewhisperer:CreateProfile", "codewhisperer:DeleteProfile" ], "Resource":[ "*" ] }, { "Effect":"Allow", "Action":[ "user-subscriptions:ListClaims", "user-subscriptions:ListUserSubscriptions", "user-subscriptions:CreateClaim", "user-subscriptions:DeleteClaim", "user-subscriptions:UpdateClaim" ], "Resource":[ "*" ] }, { "Effect":"Allow", "Action":[ "q:CreateAssignment", "q:DeleteAssignment" ], "Resource":[ "*" ] }, { "Effect":"Allow", "Action":[ "iam:CreateServiceLinkedRole" ], "Resource":[ "arn:aws:iam::*:role/aws-service-role/user-subscriptions.amazonaws.com/AWSServiceRoleForUserSubscriptions" ] } ] }

Administrateurs autorisés à utiliser la console Amazon Q Developer

L’exemple de politique suivant octroie des autorisations à un utilisateur afin qu’il puisse accéder à la console Amazon Q Developer. Dans la console Amazon Q Developer, les administrateurs exécutent la plupart des tâches de configuration liées à Amazon Q Developer, y compris les tâches liées aux abonnements, aux références de code, aux personnalisations et aux plug-ins de chat. Cette politique inclut également les autorisations permettant de créer et de configurer des clés KMS gérées par le client.

Il existe quelques tâches Amazon Q Developer Pro que les administrateurs doivent effectuer via la console Amazon Q (au lieu de la console Amazon Q Developer). Pour de plus amples informations, veuillez consulter Administrateurs autorisés à utiliser la console Amazon Q.

Note

Pour créer des personnalisations ou des plug-ins, votre administrateur Amazon Q Developer Pro aura besoin d’autorisations supplémentaires.

Vous aurez besoin de l’une des deux politiques suivantes pour utiliser la console Amazon Q Developer. La politique dont vous avez besoin dépend du fait que vous configurez Amazon Q Developer pour la première fois ou que vous configurez un ancien CodeWhisperer profil Amazon.

Note

Le préfixe codewhisperer est un nom hérité d’un service qui a fusionné avec Amazon Q Developer. Pour de plus amples informations, veuillez consulter Changement de nom d’Amazon Q Developer : résumé des modifications.

Pour les nouveaux administrateurs d’Amazon Q Developer, appliquez la politique suivante :

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sso:ListInstances", "sso:CreateInstance", "sso:CreateApplication", "sso:PutApplicationAuthenticationMethod", "sso:PutApplicationGrant", "sso:PutApplicationAssignmentConfiguration", "sso:ListApplications", "sso:GetSharedSsoConfiguration", "sso:DescribeInstance", "sso:PutApplicationAccessScope", "sso:DescribeApplication", "sso:DeleteApplication", "sso:CreateApplicationAssignment", "sso:DeleteApplicationAssignment", "sso:UpdateApplication", "sso:DescribeRegisteredRegions", "sso:GetSSOStatus" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "iam:ListRoles" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "identitystore:DescribeUser" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "sso-directory:GetUserPoolInfo", "sso-directory:DescribeUsers", "sso-directory:DescribeGroups", "sso-directory:SearchGroups", "sso-directory:SearchUsers", "sso-directory:DescribeDirectory" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "signin:ListTrustedIdentityPropagationApplicationsForConsole", "signin:CreateTrustedIdentityPropagationApplicationForConsole" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "user-subscriptions:ListClaims", "user-subscriptions:ListApplicationClaims", "user-subscriptions:ListUserSubscriptions", "user-subscriptions:CreateClaim", "user-subscriptions:DeleteClaim", "user-subscriptions:UpdateClaim" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "organizations:DescribeAccount", "organizations:DescribeOrganization", "organizations:ListAWSServiceAccessForOrganization", "organizations:DisableAWSServiceAccess", "organizations:EnableAWSServiceAccess" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "kms:ListAliases", "kms:CreateGrant", "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey*", "kms:RetireGrant", "kms:DescribeKey" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "codeguru-security:UpdateAccountConfiguration" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": [ "arn:aws:iam::*:role/aws-service-role/q.amazonaws.com/AWSServiceRoleForAmazonQDeveloper" ] }, { "Effect": "Allow", "Action": [ "codewhisperer:UpdateProfile", "codewhisperer:ListProfiles", "codewhisperer:TagResource", "codewhisperer:UnTagResource", "codewhisperer:ListTagsForResource", "codewhisperer:CreateProfile" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "q:ListDashboardMetrics", "q:CreateAssignment", "q:DeleteAssignment" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "cloudwatch:GetMetricData", "cloudwatch:ListMetrics" ], "Resource": [ "*" ] } ] }

Pour les anciens CodeWhisperer profils Amazon, la politique suivante permettra à un directeur IAM d'administrer une CodeWhisperer application.

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sso-directory:SearchUsers", "sso-directory:SearchGroups", "sso-directory:GetUserPoolInfo", "sso-directory:DescribeDirectory", "sso-directory:ListMembersInGroup" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "iam:ListRoles" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "pricing:GetProducts" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "sso:AssociateProfile", "sso:DisassociateProfile", "sso:GetProfile", "sso:ListProfiles", "sso:ListApplicationInstances", "sso:GetApplicationInstance", "sso:CreateManagedApplicationInstance", "sso:GetManagedApplicationInstance", "sso:ListProfileAssociations", "sso:GetSharedSsoConfiguration", "sso:ListDirectoryAssociations", "sso:DescribeRegisteredRegions", "sso:GetSsoConfiguration", "sso:GetSSOStatus" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "identitystore:ListUsers", "identitystore:ListGroups" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "organizations:DescribeAccount", "organizations:DescribeOrganization" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "kms:ListAliases", "kms:CreateGrant", "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey*", "kms:RetireGrant", "kms:DescribeKey" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "codeguru-security:UpdateAccountConfiguration" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": [ "arn:aws:iam::*:role/aws-service-role/q.amazonaws.com/AWSServiceRoleForAmazonQDeveloper" ] }, { "Effect": "Allow", "Action": [ "codewhisperer:UpdateProfile", "codewhisperer:ListProfiles", "codewhisperer:TagResource", "codewhisperer:UnTagResource", "codewhisperer:ListTagsForResource", "codewhisperer:CreateProfile" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "q:ListDashboardMetrics", "cloudwatch:GetMetricData", "cloudwatch:ListMetrics" ], "Resource": [ "*" ] } ] }

Administrateurs autorisés à créer des personnalisations

La politique suivante autorise les administrateurs à créer et à gérer des personnalisations dans Amazon Q Developer.

Pour configurer les personnalisations dans la console Amazon Q Developer, votre administrateur Amazon Q Developer devra accéder à la console Amazon Q Developer. Pour de plus amples informations, veuillez consulter Administrateurs autorisés à utiliser la console Amazon Q Developer.

Note

Dans la politique suivante, le service IAM signalera les erreurs relatives aux autorisations codeconnections:ListOwners et codeconnections:ListRepositories. Créez quand même la politique avec ces autorisations. Les autorisations sont requises, et la politique fonctionnera malgré les erreurs.

Note

Le préfixe codewhisperer est un nom hérité d’un service qui a fusionné avec Amazon Q Developer. Pour de plus amples informations, veuillez consulter Changement de nom d’Amazon Q Developer : résumé des modifications.

Dans l'exemple suivant, remplacez account number par votre numéro de AWS compte.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sso-directory:DescribeUsers" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "kms:CreateGrant" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "codewhisperer:CreateCustomization", "codewhisperer:DeleteCustomization", "codewhisperer:ListCustomizations", "codewhisperer:ListCustomizationVersions", "codewhisperer:UpdateCustomization", "codewhisperer:GetCustomization", "codewhisperer:ListCustomizationPermissions", "codewhisperer:AssociateCustomizationPermission", "codewhisperer:DisassociateCustomizationPermission" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "codeconnections:ListOwners", "codeconnections:ListRepositories", "codeconnections:ListConnections", "codeconnections:GetConnection" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": "codeconnections:UseConnection", "Resource": [ "*" ], "Condition": { "ForAnyValue:StringEquals": { "codeconnections:ProviderAction": [ "GitPull", "ListRepositories", "ListOwners" ] } } }, { "Effect": "Allow", "Action": [ "s3:GetObject*", "s3:GetBucket*", "s3:ListBucket*" ], "Resource": [ "*" ] } ] }

Administrateurs autorisés à configurer les plug-ins

L’exemple de politique suivant accorde aux administrateurs l’autorisation de consulter et de configurer des plug-ins tiers dans la console Amazon Q Developer.

Note

Pour accéder à la console Amazon Q Developer, les administrateurs ont également besoin des autorisations définies dans Administrateurs autorisés à utiliser la console Amazon Q Developer.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "q:CreatePlugin", "q:GetPlugin", "q:DeletePlugin", "q:ListPlugins", "q:ListPluginProviders", "q:UpdatePlugin", "q:CreateAuthGrant", "q:CreateOAuthAppConnection", "q:SendEvent", "q:UpdateAuthGrant", "q:UpdateOAuthAppConnection", "q:UpdatePlugin", "iam:CreateRole", "secretsmanager:CreateSecret" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": [ "q.amazonaws.com" ] } } } ] }

Administrateurs autorisés à configurer les plug-ins d’un seul fournisseur

L’exemple de politique suivant accorde à un administrateur l’autorisation de configurer des plug-ins à partir d’un fournisseur, spécifié par l’ARN du plug-in avec le nom du fournisseur de plug-in et un caractère générique (*). Pour utiliser cette politique, remplacez le texte suivant dans l’ARN du champ Ressource :

  • AWS-region— L' Région AWS endroit où le plugin sera créé.

  • AWS-account-ID— L' AWS identifiant du compte sur lequel votre plugin est configuré.

  • plugin-provider— Le nom du fournisseur de plugins pour lequel vous souhaitez autoriser la configuration, like CloudZeroDatadog, ouWiz. Le champ du fournisseur de plug-in est sensible à la casse.

Note

Pour accéder à la console Amazon Q Developer, les administrateurs ont également besoin des autorisations définies dans Administrateurs autorisés à utiliser la console Amazon Q Developer.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowCreateProviderPlugin", "Effect": "Allow", "Action": [ "q:CreatePlugin", "q:GetPlugin", "q:DeletePlugin" ], "Resource": "arn:aws:qdeveloper:us-east-1:111122223333:plugin/plugin-provider/*" } ] }

Migration autorisée sur plusieurs réseaux ou sous-réseaux

JSON
{ "Version":"2012-10-17", "Statement": [{ "Sid": "MGNNetworkMigrationAnalyzerEC2ResourceSgTag", "Effect": "Allow", "Action": [ "ec2:CreateSecurityGroup" ], "Resource": [ "arn:aws:ec2:us-east-1:111122223333:vpc/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/CreatedBy": "AWSApplicationMigrationService" } } }, { "Sid": "MGNNetworkMigrationAnalyzerEC2RequestSgTag", "Effect": "Allow", "Action": [ "ec2:CreateSecurityGroup" ], "Resource": [ "arn:aws:ec2:us-east-1:111122223333:security-group/*", "arn:aws:ec2:us-east-1:111122223333:security-group-rule/*" ], "Condition": { "StringEquals": { "aws:RequestTag/CreatedBy": "AWSApplicationMigrationService" } } }, { "Sid": "MGNNetworkMigrationAnalyzerEC2SecurityGroupTags", "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": [ "arn:aws:ec2:us-east-1:111122223333:security-group/*", "arn:aws:ec2:us-east-1:111122223333:security-group-rule/*", "arn:aws:ec2:us-east-1:111122223333:network-interface/*", "arn:aws:ec2:us-east-1:111122223333:network-insights-path/*", "arn:aws:ec2:us-east-1:111122223333:network-insights-analysis/*" ], "Condition": { "StringEquals": { "aws:RequestTag/CreatedBy": "AWSApplicationMigrationService", "ec2:CreateAction": [ "CreateSecurityGroup", "CreateNetworkInterface", "CreateNetworkInsightsPath", "StartNetworkInsightsAnalysis" ] } } }, { "Sid": "MGNNetworkMigrationAnalyzerENIResourceTag", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface" ], "Resource": [ "arn:aws:ec2:us-east-1:111122223333:subnet/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/CreatedBy": "AWSApplicationMigrationService" } } }, { "Sid": "MGNNetworkMigrationAnalyzerENISG", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface" ], "Resource": [ "arn:aws:ec2:us-east-1:111122223333:security-group/*" ] }, { "Sid": "MGNNetworkMigrationAnalyzerEC2ResourceTag", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInsightsPath" ], "Resource": [ "*" ], "Condition": { "StringEquals": { "aws:ResourceTag/CreatedBy": "AWSApplicationMigrationService" } } }, { "Sid": "MGNNetworkMigAnalyzerEC2RequestTag", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", "ec2:CreateNetworkInsightsPath", "ec2:StartNetworkInsightsAnalysis" ], "Resource": [ "*" ], "Condition": { "StringEquals": { "aws:RequestTag/CreatedBy": "AWSApplicationMigrationService" } } }, { "Sid": "MGNNetworkMigrationAnalyzeNetwork", "Effect": "Allow", "Action": [ "ec2:StartNetworkInsightsAnalysis" ], "Resource": [ "*" ] } ] }