View a markdown version of this page

Identity-based esempi di policy per Amazon CloudFront - Amazon CloudFront

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à.

Identity-based esempi di policy per Amazon CloudFront

Per impostazione predefinita, gli utenti e i ruoli non dispongono dell’autorizzazione per creare o modificare risorse CloudFront. Per concedere agli utenti l’autorizzazione a eseguire azioni sulle risorse di cui hanno bisogno, un amministratore IAM può creare policy IAM.

Per informazioni su come creare una policy basata su identità IAM utilizzando questi documenti di policy JSON di esempio, consulta Creazione di policy IAM (console) nella Guida per l’utente di IAM.

Per dettagli sulle azioni e sui tipi di risorse definiti da CloudFront, incluso il formato degli ARN per ciascun tipo di risorsa, consulta Azioni, risorse e chiavi di condizione per Amazon CloudFront nel Service Authorization Reference.

Best practice per le policy

Identity-based le politiche stabiliscono se qualcuno può creare, accedere o eliminare CloudFront risorse nel tuo account. Queste operazioni possono comportare costi aggiuntivi per l’ Account AWS. Quando si creano o modificano policy basate sull’identità, seguire queste linee guida e raccomandazioni:

  • Inizia con le policy AWS gestite e passa alle autorizzazioni con privilegi minimi: per iniziare a concedere le autorizzazioni agli utenti e ai carichi di lavoro, utilizza le policy AWS gestite che concedono le autorizzazioni per molti casi d'uso comuni. Sono disponibili nel tuo. Account AWS Ti consigliamo di ridurre ulteriormente le autorizzazioni definendo politiche gestite dal AWS cliente specifiche per i tuoi casi d'uso. Per maggiori informazioni, consulta Policy gestite da AWS o Policy gestite da AWS per le funzioni dei processi nella Guida per l’utente di IAM.

  • Applicazione delle autorizzazioni con privilegio minimo - Quando si impostano le autorizzazioni con le policy IAM, concedere solo le autorizzazioni richieste per eseguire un’attività. È possibile farlo definendo le azioni che possono essere intraprese su risorse specifiche in condizioni specifiche, note anche come autorizzazioni con privilegio minimo. Per maggiori informazioni sull’utilizzo di IAM per applicare le autorizzazioni, consulta Policy e autorizzazioni in IAM nella Guida per l’utente di IAM.

  • Condizioni d’uso nelle policy IAM per limitare ulteriormente l’accesso - Per limitare l’accesso ad azioni e risorse è possibile aggiungere una condizione alle policy. Ad esempio, è possibile scrivere una condizione di policy per specificare che tutte le richieste devono essere inviate utilizzando SSL. Puoi anche utilizzare le condizioni per concedere l'accesso alle azioni di servizio se vengono utilizzate tramite uno specifico Servizio AWS, ad esempio CloudFormation. Per maggiori informazioni, consultare la sezione Elementi delle policy JSON di IAM: condizione nella Guida per l’utente di IAM.

  • Utilizzo dello strumento di analisi degli accessi IAM per convalidare le policy IAM e garantire autorizzazioni sicure e funzionali - Lo strumento di analisi degli accessi IAM convalida le policy nuove ed esistenti in modo che aderiscano al linguaggio (JSON) della policy IAM e alle best practice di IAM. Lo strumento di analisi degli accessi IAM offre oltre 100 controlli delle policy e consigli utili per creare policy sicure e funzionali. Per maggiori informazioni, consultare Convalida delle policy per il Sistema di analisi degli accessi IAM nella Guida per l’utente di IAM.

  • Richiedi l'autenticazione a più fattori (MFA): se hai uno scenario che richiede utenti IAM o un utente root Account AWS, attiva l'MFA per una maggiore sicurezza. Per richiedere la MFA quando vengono chiamate le operazioni API, aggiungere le condizioni MFA alle policy. Per maggiori informazioni, consultare Protezione dell’accesso API con MFA nella Guida per l’utente di IAM.

Per maggiori informazioni sulle best practice in IAM, consulta Best practice di sicurezza in IAM nella Guida per l’utente di IAM.

Consentire agli utenti di visualizzare le loro autorizzazioni

Questo esempio mostra in che modo è possibile creare una policy che consente agli utenti IAM di visualizzare le policy inline e gestite che sono collegate alla relativa identità utente. Questa policy include le autorizzazioni per completare questa azione sulla console o a livello di codice utilizzando l'API or. AWS CLI AWS

{ "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": "*" } ] }

Autorizzazioni di accesso a livello di codice CloudFront

Di seguito viene illustrata una policy di autorizzazione. Il Sid, o ID dichiarazione, è facoltativo.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowAllCloudFrontPermissions", "Effect": "Allow", "Action": ["cloudfront:*"], "Resource": "*" } ] }

La policy concede le autorizzazioni per eseguire tutte le CloudFront operazioni, sufficienti per accedere a livello di codice. CloudFront Se stai usando la console per accedere, consulta. CloudFront Autorizzazioni necessarie per utilizzare la console CloudFront

Per un elenco delle azioni e l'ARN specificato per concedere o negare l'autorizzazione all'utilizzo di ciascuna azione, consulta Azioni, risorse e chiavi di condizione per Amazon CloudFront nel Service Authorization Reference.

Autorizzazioni necessarie per utilizzare la console CloudFront

Per concedere l'accesso completo alla CloudFront console, concedi le autorizzazioni nella seguente politica di autorizzazioni:

JSON
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "acm:ListCertificates", "cloudfront:*", "cloudwatch:DescribeAlarms", "cloudwatch:PutMetricAlarm", "cloudwatch:GetMetricStatistics", "elasticloadbalancing:DescribeLoadBalancers", "iam:ListServerCertificates", "sns:ListSubscriptionsByTopic", "sns:ListTopics", "waf:GetWebACL", "waf:ListWebACLs" ], "Resource":"*" }, { "Effect":"Allow", "Action":[ "s3:ListAllMyBuckets", "s3:PutBucketPolicy" ], "Resource":"arn:aws:s3:::*" } ] }

Di seguito viene descritto perché le autorizzazioni sono necessarie:

acm:ListCertificates

Quando crei e aggiorni le distribuzioni utilizzando la CloudFront console e desideri configurare CloudFront per richiedere HTTPS tra il visualizzatore CloudFront e/o tra CloudFront e l'origine, ti consente di visualizzare un elenco di certificati ACM.

Questa autorizzazione non è richiesta se non utilizzi la CloudFront console.

cloudfront:*

Consente di eseguire tutte CloudFront le azioni.

cloudwatch:DescribeAlarms e cloudwatch:PutMetricAlarm

Consente di creare e visualizzare CloudWatch allarmi nella CloudFront console. Consulta anche sns:ListSubscriptionsByTopic e sns:ListTopics.

Queste autorizzazioni non sono necessarie se non utilizzi la console di CloudFront.

cloudwatch:GetMetricStatistics

Consente di CloudFront eseguire il rendering CloudWatch delle metriche nella console. CloudFront

Questa autorizzazione non è richiesta se non utilizzi la CloudFront console.

elasticloadbalancing:DescribeLoadBalancers

Durante la creazione e l'aggiornamento delle distribuzioni, consente di visualizzare un elenco di load balancer di Elastic Load Balancing nell'elenco delle origini disponibili.

Questa autorizzazione non è richiesta se non utilizzi la CloudFront console.

iam:ListServerCertificates

Quando crei e aggiorni le distribuzioni utilizzando la CloudFront console e desideri CloudFront configurare in modo che richieda HTTPS tra il visualizzatore CloudFront e/o tra CloudFront e l'origine, ti consente di visualizzare un elenco di certificati nell'archivio certificati IAM.

Questa autorizzazione non è richiesta se non utilizzi la CloudFront console.

s3:ListAllMyBuckets

Quando crei e aggiorni distribuzioni, ti consente di eseguire le seguenti operazioni:

  • Visualizzare un elenco di bucket S3 nell'elenco di origini disponibili

  • Visualizzare un elenco di bucket S3 in cui salvare log di accesso

Questa autorizzazione non è richiesta se non utilizzi la CloudFront console.

S3:PutBucketPolicy

Quando crei o aggiorni distribuzioni che limitano l'accesso a bucket S3, consente a un utente di aggiornare le policy di bucket per concedere l'accesso all'identità di accesso origine di CloudFront. Per ulteriori informazioni, consulta Utilizzo di un’identità di accesso origine (legacy, non consigliata).

Questa autorizzazione non è richiesta se non utilizzi la CloudFront console.

sns:ListSubscriptionsByTopic e sns:ListTopics

Quando crei CloudWatch allarmi nella CloudFront console, ti consente di scegliere un argomento SNS per le notifiche.

Queste autorizzazioni non sono necessarie se non utilizzi la console di CloudFront.

waf:GetWebACL e waf:ListWebACLs

Consente di visualizzare un elenco di ACL AWS WAF Web nella console. CloudFront

Queste autorizzazioni non sono necessarie se non utilizzi la console di CloudFront.

Permission-only azioni per la console CloudFront

È possibile eseguire le seguenti CloudFront azioni nella pagina CloudFront Security Savings Bundle. Le seguenti azioni API non devono essere richiamate dal codice e non sono incluse negli AWS SDK AWS CLI e.

Azione Description

CreateSavingsPlan

Concede l’autorizzazione per creare un nuovo Savings Plan.

GetSavingsPlan

Concede l’autorizzazione per ottenere un Savings Plan.

ListRateCards

Concede il permesso di elencare le carte CloudFront tariffarie per l'account.

ListSavingsPlans

Concede l’autorizzazione per elencare i Savings Plans nell’account.

ListUsages

Concede l'autorizzazione all'utilizzo delle liste CloudFront .

UpdateSavingsPlan

Concede l’autorizzazione per aggiornare un Savings Plan.

Note
  • Per ulteriori informazioni sui piani di CloudFront risparmio, consulta la sezione CloudFront Security Savings Bundle delle domande frequenti su Amazon CloudFront .

  • Se crei un piano di risparmio per CloudFront e desideri eliminarlo in un secondo momento, contatta Supporto AWS.

Esempi di policy gestite dal cliente

Puoi creare politiche IAM personalizzate per consentire le autorizzazioni per le azioni CloudFront API. È possibile allegare queste policy personalizzate agli utenti o ai gruppi IAM che hanno bisogno delle autorizzazioni specificate. Queste policy funzionano quando si utilizzano l' CloudFront API, gli AWS SDK o il. AWS CLI I seguenti esempi mostrano autorizzazioni per alcuni casi d'utilizzo comuni. Per la politica che concede a un utente l'accesso completo a CloudFront, consulta. Autorizzazioni necessarie per utilizzare la console CloudFront

Esempio 1: autorizzazione per accedere in lettura a tutte le distribuzioni

La seguente politica di autorizzazione concede all'utente le autorizzazioni per visualizzare tutte le distribuzioni nella console: CloudFront

JSON
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "acm:ListCertificates", "cloudfront:GetDistribution", "cloudfront:GetDistributionConfig", "cloudfront:ListDistributions", "cloudfront:ListCloudFrontOriginAccessIdentities", "elasticloadbalancing:DescribeLoadBalancers", "iam:ListServerCertificates", "sns:ListSubscriptionsByTopic", "sns:ListTopics", "waf:GetWebACL", "waf:ListWebACLs" ], "Resource":"*" }, { "Effect":"Allow", "Action":[ "s3:ListAllMyBuckets" ], "Resource":"arn:aws:s3:::*" } ] }

Esempio 2: autorizzazione per la creazione, l’aggiornamento e l’eliminazione di distribuzioni

La seguente politica di autorizzazione consente agli utenti di creare, aggiornare ed eliminare le distribuzioni utilizzando la console: CloudFront

JSON
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "acm:ListCertificates", "cloudfront:CreateDistribution", "cloudfront:DeleteDistribution", "cloudfront:GetDistribution", "cloudfront:GetDistributionConfig", "cloudfront:ListDistributions", "cloudfront:UpdateDistribution", "cloudfront:ListCloudFrontOriginAccessIdentities", "elasticloadbalancing:DescribeLoadBalancers", "iam:ListServerCertificates", "sns:ListSubscriptionsByTopic", "sns:ListTopics", "waf:GetWebACL", "waf:ListWebACLs" ], "Resource":"*" }, { "Effect":"Allow", "Action":[ "s3:ListAllMyBuckets", "s3:PutBucketPolicy" ], "Resource":"arn:aws:s3:::*" } ] }

L'autorizzazione cloudfront:ListCloudFrontOriginAccessIdentities consente agli utenti di concedere automaticamente a un'identità di accesso origine l'autorizzazione ad accedere agli oggetti in un bucket Amazon S3. Se vuoi che gli utenti siano in grado di creare identità di accesso origine, devi concedere anche l'autorizzazione cloudfront:CreateCloudFrontOriginAccessIdentity.

Esempio 3: autorizzazione per creare ed elencare invalidamenti

La policy di autorizzazione seguente consente agli utenti di creare ed elencare invalidamenti. Include l'accesso in lettura alle CloudFront distribuzioni perché si creano e si visualizzano le invalidazioni visualizzando prima le impostazioni per una distribuzione:

JSON
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "acm:ListCertificates", "cloudfront:GetDistribution", "cloudfront:GetStreamingDistribution", "cloudfront:GetDistributionConfig", "cloudfront:ListDistributions", "cloudfront:ListCloudFrontOriginAccessIdentities", "cloudfront:CreateInvalidation", "cloudfront:GetInvalidation", "cloudfront:ListInvalidations", "elasticloadbalancing:DescribeLoadBalancers", "iam:ListServerCertificates", "sns:ListSubscriptionsByTopic", "sns:ListTopics", "waf:GetWebACL", "waf:ListWebACLs" ], "Resource":"*" }, { "Effect":"Allow", "Action":[ "s3:ListAllMyBuckets" ], "Resource":"arn:aws:s3:::*" } ] }

Esempio 4: consentire la creazione di una distribuzione

La seguente politica di autorizzazione concede all'utente il permesso di creare ed elencare le distribuzioni nella console. CloudFront Per l’azione CreateDistribution, specifica il carattere jolly (*) per la Resource invece di un carattere jolly per la distribuzione ARN (arn:aws:cloudfront::123456789012:distribution/*). Per ulteriori informazioni sull’elemento Resource, consulta Elementi della policy JSON di IAM: risorsa nella Guida per l’utente IAM.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "cloudfront:CreateDistribution", "Resource": "*" }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": "cloudfront:ListDistributions", "Resource": "*" } ] }