SEC03-BP08 Condivisione delle risorse in modo sicuro all'interno dell'organizzazione - Framework AWS Well-Architected

SEC03-BP08 Condivisione delle risorse in modo sicuro all'interno dell'organizzazione

Con l'aumento del numero di carichi di lavoro, è possibile che sia necessario condividere l'accesso alle risorse in tali carichi di lavoro o eseguire il provisioning delle risorse più volte su più account. Possono esistere costrutti per segmentare il proprio l'ambiente, come ad esempio ambienti di sviluppo, di test e di produzione. Tuttavia, la presenza di costrutti di separazione non limita la possibilità di condividere in modo sicuro. La condivisione di componenti che si sovrappongono consente di ridurre i costi operativi e di garantire un'esperienza coerente, senza dover intuire cosa potrebbe sfuggire durante la creazione della stessa risorsa più volte.

Risultato desiderato: ridurre al minimo gli accessi indesiderati utilizzando metodi sicuri per condividere le risorse all'interno dell'organizzazione e contribuire all'iniziativa di prevenzione della perdita di dati. Ridurre i costi operativi rispetto alla gestione dei singoli componenti, ridurre gli errori dovuti alla creazione manuale dello stesso componente più volte e aumentare la scalabilità dei carichi di lavoro. I tempi di risoluzione in caso di guasti multipli sono ridotti e la sicurezza nel determinare quando un componente non è più necessario è aumentata. Per una guida prescrittiva sull'analisi delle risorse condivise dall'esterno, consulta SEC03-BP07 Analisi dell'accesso pubblico e multi-account.

Anti-pattern comuni:

  • Mancanza di un processo per il monitoraggio continuo e segnalazione automatica di azioni esterne inaspettate.

  • Mancanza di una linea di base su ciò che deve e ciò che non deve essere condiviso.

  • Scelta di una policy di ampia apertura piuttosto che di una condivisione esplicita quando richiesto.

  • Creazione manuale di risorse fondamentali che si sovrappongono quando necessario.

Livello di rischio associato se questa best practice non fosse adottata: medio

Guida all'implementazione

Progetta i controlli e i modelli di accesso per gestire il consumo di risorse condivise in modo sicuro e solo con entità fidate. Monitora le risorse condivise e controllane costantemente l'accesso ricevendo un avviso in caso di condivisione inappropriata o inaspettata. Consulta Analisi dell'accesso pubblico e multi-account come supporto per stabilire una governance che riduca l'accesso esterno alle sole risorse che lo richiedono e per definire un processo di monitoraggio continuo e di avviso automatico.

La condivisione multi-account in AWS Organizations è supportata da una serie di servizi AWS, come AWS Security Hub, Amazon GuardDuty e AWS Backup. Questi servizi permettono di condividere i dati con un account centrale, di accedere a un account centrale o di gestire risorse e dati da un account centrale. Ad esempio, AWS Security Hub può trasferire i risultati dai singoli account a un account centrale in cui è possibile visualizzare tutti i risultati. AWS Backup può eseguire un backup di una risorsa e condividerlo tra gli account. Puoi utilizzare AWS Resource Access Manager (AWS RAM) per condividere altre risorse comuni, quali sottoreti VPC e allegati Transit Gateway, AWS Network Firewall o pipeline Amazon SageMaker.

Per limitare l'account alla condivisione di risorse solo all'interno dell'organizzazione, utilizza le policy di controllo dei servizi (Service Control Policies, SCP) per impedire l'accesso ai principali esterni. Quando condividi le risorse, combina controlli basati sull'identità e controlli di rete per creare un perimetro di dati per l'organizzazione in modo da proteggere dall'accesso non intenzionale. Un perimetro di dati è un insieme di guardrail preventivi che aiutano a verificare che solo le identità fidate accedano a risorse fidate dalle reti previste. Questi controlli pongono limiti adeguati alle risorse che possono essere condivise e impediscono la condivisione o l'esposizione di risorse che non sono consentite. Ad esempio, nell'ambito del perimetro dei dati, è possibile utilizzare le policy degli endpoint VPC e la condizione AWS:PrincipalOrgId per assicurarsi che le identità che accedono ai bucket Amazon S3 appartengano alla propria organizzazione. È importante notare che le policy di controllo dei servizi non si applicano ai ruoli correlati ai servizi (Service-Linked Roles, LSR) o ai principali del servizio AWS.

Quando utilizzi Amazon S3, disabilita le ACL per il bucket Amazon S3 e utilizza le policy IAM per definire il controllo degli accessi. Per delimitare un accesso a un'origine Amazon S3 da Amazon CloudFront, migra dall'identità di accesso origine (OAI) al controllo di accesso origine (OAC) che supporta funzionalità aggiuntive, inclusa la crittografia lato server con AWS Key Management Service.

In alcuni casi, può essere necessario condividere le risorse al di fuori dell'organizzazione o concedere a terzi l'accesso alle risorse stesse. Per una guida prescrittiva sulla gestione delle autorizzazioni per la condivisione di risorse all'esterno, consulta Gestione delle autorizzazioni.

Passaggi dell'implementazione

  1. Utilizzo di AWS Organizations.

    AWS Organizations è un servizio di gestione degli account che consente di consolidare più Account AWS in un'organizzazione creata e gestita centralmente. È possibile raggruppare gli account in unità organizzative (OU) e associare policy diverse a ciascuna di esse per soddisfare le esigenze di bilancio, sicurezza e conformità. È inoltre possibile controllare il modo in cui i servizi di Intelligenza Artificiale (IA) e di machine learning (ML) di AWS possono raccogliere e archiviare i dati e utilizzare la gestione multi-account dei servizi AWS integrati nelle Organizations.

  2. Integrazione delle AWS Organizations con i servizi AWS.

    Quando si abilita un servizio AWS a svolgere attività per conto dell'utente negli account membri dell'organizzazione, AWS Organizations crea un ruolo IAM collegato al servizio in ogni account membro. L'accesso attendibile deve essere gestito tramite la AWS Management Console, le API AWS o la AWS CLI. Per una guida prescrittiva sull'abilitazione dell'accesso attendibile, consulta Uso di AWS Organizations con altri servizi AWS e Servizi AWS che puoi utilizzare con Organizations.

  3. Definizione di un perimetro di dati.

    Il perimetro AWS è tipicamente rappresentato come un'organizzazione gestita da AWS Organizations. Insieme alle reti e ai sistemi on-premise, l'accesso alle risorse AWS è ciò che molti considerano il perimetro di My AWS. L'obiettivo del perimetro è verificare che l'accesso sia consentito se l'identità è attendibile, la risorsa è attendibile e la rete è conforme.

    1. Definizione e implementazione dei perimetri.

      Segui i passaggi descritti in Perimeter implementation (Implementazione del perimetro) nel whitepaper Building a Perimeter on AWS (Costruire un perimetro su AWS) per qualsiasi condizione di autorizzazione. Per una guida prescrittiva sulla protezione del livello di rete, consulta Protezione delle reti.

    2. Monitoraggio e segnalazione continui.

      AWS Identity and Access Management Access Analyzer aiuta a identificare le risorse dell'organizzazione e gli account condivisi con entità esterne. Puoi integrare IAM Access Analyzer con AWS Security Hub per inviare e aggregare i risultati di una risorsa da IAM Access Analyzer a Security Hub per analizzare la sicurezza dell'ambiente. Per abilitare l'integrazione, abilita sia IAM Access Analyzer che Security Hub in ogni Regione per ogni account. Puoi anche utilizzare Regole di AWS Config per eseguire l'audit della configurazione e avvisare la parte interessata mediante AWS Chatbot con AWS Security Hub. Puoi quindi utilizzare i Documenti di AWS Systems Manager per adottare i provvedimenti correttivi alle risorse non conformi.

    3. Per una guida prescrittiva sul monitoraggio e sull'avviso continuo delle risorse condivise esternamente, consulta Analisi dell'accesso pubblico e multi-account.

  4. Utilizza la condivisione delle risorse nei servizi AWS e delimitale di conseguenza.

    Molti servizi AWS consentono di condividere le risorse con un altro account o di puntare a una risorsa di un altro account, come Amazon Machine Image (AMI) e AWS Resource Access Manager (AWS RAM). Delimita l'API ModifyImageAttribute per specificare gli account affidabili con cui condividere l'AMI. Specifica la condizione ram:RequestedAllowsExternalPrincipals quando si utilizza AWS RAM per limitare la condivisione solo alla propria organizzazione, per evitare l'accesso da parte di identità non affidabili. Per indicazioni e considerazioni prescrittive Resource sharing and external targets (Condivisione delle risorse e target esterni).

  5. Utilizzare AWS RAM per condivisioni sicure con un account o con altri Account AWS.

    AWS RAM consente di condividere in modo sicuro le risorse create con i ruoli e gli utenti del proprio account e con altri utenti Account AWS. In un ambiente multi-account, AWS RAM consente di creare una risorsa una sola volta e di condividerla con altri account. Questo approccio contribuisce a ridurre i costi operativi, fornendo al contempo coerenza, visibilità e verificabilità grazie alle integrazioni con Amazon CloudWatch e AWS CloudTrail, che non si ottengono quando si utilizza l'accesso multi-account.

    Se si dispone di risorse condivise in precedenza utilizzando una policy basata sulle risorse, è possibile utilizzare l'API PromoteResourceShareCreatedFromPolicy o un'API equivalente per promuovere il passaggio da una condivisione di risorse a una condivisione completa di risorse AWS RAM.

    In alcuni casi, potrebbe essere necessario adottare ulteriori misure per condividere le risorse. Ad esempio, per condividere un'istantanea crittografata è necessario condividere una chiave AWS KMS.

Risorse

Best practice correlate:

Documenti correlati:

Video correlati:

Strumenti correlati: