Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Gestione dell' AWS CloudShell accesso e dell'utilizzo con le policy IAM
Con le risorse di gestione degli accessi che possono essere fornite da AWS Identity and Access Management, gli amministratori possono concedere le autorizzazioni agli IAM utenti. In questo modo, questi utenti possono accedere AWS CloudShell e utilizzare le funzionalità dell'ambiente. Gli amministratori possono anche creare policy che specificano a livello granulare le azioni che gli utenti possono eseguire con l'ambiente shell.
Il modo più rapido per un amministratore di concedere l'accesso agli utenti è tramite una AWS policy gestita. Una policy AWS gestita è una policy autonoma creata e amministrata da. AWS La seguente politica AWS gestita per AWS CloudShell può essere allegata alle IAM identità:
-
AWS CloudShellFullAccess: concede l'autorizzazione all'uso AWS CloudShell con accesso completo a tutte le funzionalità.
La AWS CloudShellFullAccesspolicy utilizza il carattere jolly (*) per fornire all'IAMidentità (utente, ruolo o gruppo) l'accesso completo a CloudShell e funzionalità. Per ulteriori informazioni su questa politica, consulta AWS CloudShellFullAccessla AWS Managed Policy User Guide.
Nota
IAMpossono essere CloudShell lanciate anche identità con le seguenti politiche AWS gestite. Tuttavia, queste politiche forniscono autorizzazioni estese. Pertanto, ti consigliamo di concedere queste politiche solo se sono essenziali per il ruolo lavorativo di un IAM utente.
-
Amministratore: fornisce IAM agli utenti l'accesso completo e consente loro di delegare le autorizzazioni a tutti i servizi e le risorse in uso. AWS
-
Developer power user: consente IAM agli utenti di eseguire attività di sviluppo di applicazioni e di creare e configurare risorse e servizi che supportano lo sviluppo AWS consapevole delle applicazioni.
Per ulteriori informazioni sull'allegazione di policy gestite, consulta Aggiungere autorizzazioni di IAM identità (console) nella Guida per l'IAMutente.
Gestione delle azioni consentite nell' AWS CloudShell utilizzo di politiche personalizzate
Per gestire le azioni che un IAM utente può eseguire CloudShell, crea una politica personalizzata che utilizzi la politica CloudShellPolicy gestita come modello. In alternativa, modifica una politica in linea incorporata nell'IAMidentità pertinente (utente, gruppo o ruolo).
Ad esempio, puoi consentire IAM agli utenti di accedere CloudShell, ma impedire loro di inoltrare le credenziali di CloudShell ambiente utilizzate per accedere. AWS Management Console
Importante
Per eseguire l'avvio AWS CloudShell da AWS Management Console, un IAM utente deve disporre delle autorizzazioni per le seguenti azioni:
-
CreateEnvironment
-
CreateSession
-
GetEnvironmentStatus
-
StartEnvironment
Se una di queste azioni non è esplicitamente consentita da una politica allegata, viene restituito un errore di IAM autorizzazione quando si tenta di avviare. CloudShell
Nome | Descrizione dell'autorizzazione concessa | Necessario per il lancio CloudShell? |
---|---|---|
|
Crea un CloudShell ambiente, recupera il layout all'inizio della CloudShell sessione e salva il layout corrente dall'applicazione web nel backend. Questa autorizzazione è prevista solo |
Sì |
|
Si connette a un CloudShell ambiente da. AWS Management Console |
Sì |
|
Leggi lo stato di un CloudShell ambiente. |
Sì |
|
Elimina un CloudShell ambiente. |
No |
|
Genera Amazon URLs S3 prefirmato che viene utilizzato per scaricare file CloudShell tramite CloudShell l'interfaccia Web. Questo non è disponibile per VPC gli ambienti. |
No |
|
Genera Amazon URLs S3 prefirmato che viene utilizzato per caricare file CloudShell tramite CloudShell l'interfaccia Web. Questo non è disponibile per VPC gli ambienti. |
No |
|
Descrive gli ambienti. |
No |
|
Inoltra le credenziali utilizzate per accedere a. AWS Management Console CloudShell |
No |
|
Avvia un CloudShell ambiente che viene interrotto. |
Sì |
|
Arresta un CloudShell ambiente in esecuzione. |
No |
Esempi di IAM politiche per CloudShell
Gli esempi seguenti mostrano come è possibile creare politiche per limitare chi può accedere CloudShell. Gli esempi mostrano anche le azioni che possono essere eseguite nell'ambiente shell.
La seguente politica impone una negazione totale dell'accesso a CloudShell e alle relative funzionalità.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "DenyCloudShell", "Effect": "Deny", "Action": [ "cloudshell:*" ], "Resource": "*" }] }
La seguente politica consente IAM agli utenti di accedere CloudShell ma impedisce loro di generare file prefirmati URLs per il caricamento e il download di file. Gli utenti possono comunque trasferire file da e verso l'ambiente, utilizzando client come ad wget
esempio.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowUsingCloudshell", "Effect": "Allow", "Action": [ "cloudshell:*" ], "Resource": "*" }, { "Sid": "DenyUploadDownload", "Effect": "Deny", "Action": [ "cloudshell:GetFileDownloadUrls", "cloudshell:GetFileUploadUrls" ], "Resource": "*" }] }
La seguente politica consente IAM agli utenti di accedere CloudShell. Tuttavia, la politica impedisce che le credenziali utilizzate per accedere AWS Management Console vengano inoltrate all'ambiente. CloudShell IAMgli utenti con questa politica devono configurare manualmente le proprie credenziali all'interno. CloudShell
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowUsingCloudshell", "Effect": "Allow", "Action": [ "cloudshell:*" ], "Resource": "*" }, { "Sid": "DenyCredentialForwarding", "Effect": "Deny", "Action": [ "cloudshell:PutCredentials" ], "Resource": "*" }] }
La seguente politica consente IAM agli utenti di creare AWS CloudShell ambienti.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "CloudShellUser", "Effect": "Allow", "Action": [ "cloudshell:CreateEnvironment", "cloudshell:CreateSession", "cloudshell:GetEnvironmentStatus", "cloudshell:StartEnvironment" ], "Resource": "*" }] }
IAMAutorizzazioni richieste per la creazione e l'utilizzo CloudShell VPC di ambienti
Per creare e utilizzare CloudShell VPC ambienti, l'IAMamministratore deve abilitare l'accesso a EC2 autorizzazioni Amazon VPC specifiche. Questa sezione elenca le EC2 autorizzazioni Amazon necessarie per creare e utilizzare VPC ambienti.
Per creare VPC ambienti, la IAM politica assegnata al tuo ruolo deve includere le seguenti EC2 autorizzazioni Amazon:
ec2:DescribeVpcs
ec2:DescribeSubnets
ec2:DescribeSecurityGroups
ec2:DescribeDhcpOptions
ec2:DescribeNetworkInterfaces
-
ec2:CreateTags
-
ec2:CreateNetworkInterface
-
ec2:CreateNetworkInterfacePermission
Ti consigliamo di includere anche:
-
ec2:DeleteNetworkInterface
Nota
Questa autorizzazione non è obbligatoria, ma è necessaria per CloudShell ripulire la ENI risorsa (ENIscreata per CloudShell VPC gli ambienti contrassegnati con la ManagedByCloudShell chiave) da essa creata. Se questa autorizzazione non è abilitata, è necessario pulire manualmente la ENI risorsa dopo ogni utilizzo CloudShell VPC dell'ambiente.
IAMpolitica che garantisce CloudShell l'accesso completo, incluso l'accesso a VPC
L'esempio seguente mostra come abilitare le autorizzazioni complete, incluso l'accesso aVPC, per: CloudShell
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCloudShellOperations", "Effect": "Allow", "Action": [ "cloudshell:*" ], "Resource": "*" }, { "Sid": "AllowDescribeVPC", "Effect": "Allow", "Action": [ "ec2:DescribeDhcpOptions", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeVpcs" ], "Resource": "*" }, { "Sid": "AllowCreateTagWithCloudShellKey", "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:*:*:network-interface/*", "Condition": { "StringEquals": { "ec2:CreateAction": "CreateNetworkInterface" }, "ForAnyValue:StringEquals": { "aws:TagKeys": "ManagedByCloudShell" } } }, { "Sid": "AllowCreateNetworkInterfaceWithSubnetsAndSG", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface" ], "Resource": [ "arn:aws:ec2:*:*:subnet/*", "arn:aws:ec2:*:*:security-group/*" ] }, { "Sid": "AllowCreateNetworkInterfaceWithCloudShellTag", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface" ], "Resource": "arn:aws:ec2:*:*:network-interface/*", "Condition": { "ForAnyValue:StringEquals": { "aws:TagKeys": "ManagedByCloudShell" } } }, { "Sid": "AllowCreateNetworkInterfacePermissionWithCloudShellTag", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterfacePermission" ], "Resource": "arn:aws:ec2:*:*:network-interface/*", "Condition": { "StringEquals": { "aws:ResourceTag/ManagedByCloudShell": "" } } }, { "Sid": "AllowDeleteNetworkInterfaceWithCloudShellTag", "Effect": "Allow", "Action": [ "ec2:DeleteNetworkInterface" ], "Resource": "arn:aws:ec2:*:*:network-interface/*", "Condition": { "StringEquals": { "aws:ResourceTag/ManagedByCloudShell": "" } } } ] }
Utilizzo dei tasti di IAM condizione per gli ambienti VPC
Puoi utilizzare i tasti CloudShell di condizione specifici per VPC le impostazioni per fornire controlli di autorizzazione aggiuntivi per i tuoi VPC ambienti. Puoi anche specificare le sottoreti e i gruppi di sicurezza che l'VPCambiente può e non può utilizzare.
CloudShell supporta le seguenti chiavi di condizione nelle IAM politiche:
-
CloudShell:VpcIds
— Consentire o negare uno o più VPCs -
CloudShell:SubnetIds
— Consentire o negare una o più sottoreti -
CloudShell:SecurityGroupIds
— Consentire o negare uno o più gruppi di sicurezza
Nota
Se le autorizzazioni per gli utenti con accesso agli CloudShell ambienti pubblici vengono modificate per aggiungere restrizioni all'cloudshell:createEnvironment
azione, possono comunque accedere all'ambiente pubblico esistente. Tuttavia, se desideri modificare una IAM politica con questa restrizione e disabilitare il loro accesso all'ambiente pubblico esistente, devi prima aggiornare la IAM politica con la restrizione, quindi assicurarti che ogni CloudShell utente del tuo account elimini manualmente l'ambiente pubblico esistente utilizzando l'interfaccia utente CloudShell web (Azioni → Elimina ambiente). CloudShell
Politiche di esempio con chiavi di condizione per le impostazioni VPC
Gli esempi seguenti mostrano come utilizzare i tasti di condizione per VPC le impostazioni. Dopo aver creato un'istruzione delle policy con le restrizioni desiderate, aggiungere l'istruzione delle policy per l'utente o il ruolo di destinazione.
Assicuratevi che gli utenti creino solo VPC ambienti e negate la creazione di ambienti pubblici
Per garantire che gli utenti possano creare solo VPC ambienti, utilizzate l'autorizzazione di negazione come illustrato nell'esempio seguente:
{ "Statement": [ { "Sid": "DenyCloudShellNonVpcEnvironments", "Action": [ "cloudshell:CreateEnvironment" ], "Effect": "Deny", "Resource": "*", "Condition": { "Null": { "cloudshell:VpcIds": "true" } } } ] }
Negare agli utenti l'accesso a sottoreti o gruppi di sicurezza specifici VPCs
Per negare agli utenti l'accesso a informazioni specificheVPCs, usa StringEquals
per verificare il valore della condizione. cloudshell:VpcIds
L'esempio seguente nega agli utenti l'accesso a vpc-1
e: vpc-2
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EnforceOutOfVpc", "Action": [ "cloudshell:CreateEnvironment" ], "Effect": "Deny", "Resource": "*", "Condition": { "StringEquals": { "cloudshell:VpcIds": [ "vpc-1", "vpc-2" ] } } } ] }
Per negare agli utenti l'accesso a informazioni specificheVPCs, usa StringEquals
per verificare il valore della cloudshell:SubnetIds
condizione. L'esempio seguente nega agli utenti l'accesso a subnet-1
e: subnet-2
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EnforceOutOfVpc", "Action": [ "cloudshell:CreateEnvironment" ], "Effect": "Deny", "Resource": "*", "Condition": { "StringEquals": { "cloudshell:VpcIds": [ "vpc-1", "vpc-2" ] } } } ] }
Per negare agli utenti l'accesso a informazioni specificheVPCs, usa StringEquals
per verificare il valore della cloudshell:SecurityGroupIds
condizione. L'esempio seguente nega agli utenti l'accesso a sg-1
e: sg-2
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EnforceOutOfSecurityGroups", "Action": [ "cloudshell:CreateEnvironment" ], "Effect": "Deny", "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "cloudshell:SecurityGroupIds": [ "sg-1", "sg-2" ] } } } ] }
Consenti agli utenti di creare ambienti con configurazioni specifiche VPC
Per consentire agli utenti l'accesso a VPCs informazioni specifiche, StringEquals
utilizzare per verificare il valore della cloudshell:VpcIds
condizione. L'esempio seguente consente agli utenti di accedere a vpc-1
evpc-2
:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EnforceStayInSpecificVpc", "Action": [ "cloudshell:CreateEnvironment" ], "Effect": "Allow", "Resource": "*", "Condition": { "StringEquals": { "cloudshell:VpcIds": [ "vpc-1", "vpc-2" ] } } } ] }
Per consentire agli utenti di accedere a VPCs informazioni specifiche, StringEquals
utilizzare per verificare il valore della cloudshell:SubnetIds
condizione. L'esempio seguente consente agli utenti di accedere a subnet-1
esubnet-2
:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EnforceStayInSpecificSubnets", "Action": [ "cloudshell:CreateEnvironment" ], "Effect": "Allow", "Resource": "*", "Condition": { "ForAllValues:StringEquals": { "cloudshell:SubnetIds": [ "subnet-1", "subnet-2" ] } } } ] }
Per consentire agli utenti di accedere a VPCs informazioni specifiche, StringEquals
utilizzare per verificare il valore della cloudshell:SecurityGroupIds
condizione. L'esempio seguente consente agli utenti di accedere a sg-1
esg-2
:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EnforceStayInSpecificSecurityGroup", "Action": [ "cloudshell:CreateEnvironment" ], "Effect": "Allow", "Resource": "*", "Condition": { "ForAllValues:StringEquals": { "cloudshell:SecurityGroupIds": [ "sg-1", "sg-2" ] } } } ] }
Autorizzazioni per l'accesso Servizi AWS
CloudShell utilizza IAM le credenziali utilizzate per accedere a. AWS Management Console
Nota
Per utilizzare IAM le credenziali utilizzate per accedere a AWS Management Console, è necessario disporre cloudshell:PutCredentials
dell'autorizzazione.
Questa funzionalità di preautenticazione CloudShell lo rende comodo da usare. AWS CLI Tuttavia, un IAM utente richiede comunque autorizzazioni esplicite per Servizi AWS le chiamate dalla riga di comando.
Ad esempio, supponiamo che IAM agli utenti venga richiesto di creare bucket Amazon S3 e di caricare file come oggetti su di essi. Puoi creare una policy che consenta esplicitamente tali azioni. La IAM console fornisce un editor visivo interattivo che guida attraverso il processo di creazione di un documento di policy in JSON formato standard. Dopo aver creato la policy, è possibile allegarla all'IAMidentità pertinente (utente, gruppo o ruolo).
Per ulteriori informazioni sull'allegazione di policy gestite, consulta Aggiungere autorizzazioni di IAM identità (console) nella Guida per l'IAMutente.
Autorizzazioni per l'accesso alle CLI funzionalità di Amazon Q in CloudShell
Per utilizzare CLI le funzionalità di Amazon Q CloudShell, ad esempio suggerimenti in linea, chat e traduzione, assicurati di disporre delle IAM autorizzazioni necessarie. Se non riesci ad accedere alle CLI funzionalità di Amazon Q in CloudShell, contatta il tuo amministratore per fornirti le IAM autorizzazioni necessarie. Per ulteriori informazioni, consulta esempi di policy basate sull'identità per Amazon Q Developer nella Amazon Q Developer User Guide.