Identity and Access Management in Chat IVS - Amazon IVS

Identity and Access Management in Chat IVS

AWS Identity and Access Management (IAM) è un servizio AWS che facilita all'amministratore di un account il controllo dell'accesso in alle risorse AWS in maniera sicura. Consulta Gestione dell'identità e dell'accesso in IVS nella Guida per l'utente dello streaming a bassa latenza di IVS.

Destinatari

Il modo in cui IAM viene utilizzato cambia a seconda delle operazioni da eseguire in Amazon IVS. Consulta la pagina Destinatari nella Guida per l'utente dello streaming a bassa latenza di IVS.

Come Amazon IVS funziona con IAM

Prima di poter effettuare richieste API Amazon IVS, devi creare uno o più identità IAM (utenti, gruppi e ruoli) e policy IAM, quindi collegare le policy a tali identità. Per la propagazione delle autorizzazioni sono necessari pochi minuti; fino ad allora, le richieste API vengono rifiutate.

Per una panoramica di alto livello della modalità con cui Amazon IVS utilizza IAM, consulta Servizi AWS utilizzati con IAM nella Guida per l'utente IAM.

Identità

Puoi creare identità IAM per fornire l'autenticazione a persone e processi nel tuo account AWS. I gruppi IAM sono raccolte di utenti IAM che è possibile gestire come una singola unità. Consulta Identità (utenti, gruppi e ruoli) nella Guida per l'utente di IAM.

Policy

Le policy sono documenti con autorizzazioni-policy JSON costituiti da elementi. Consulta la pagina Policy nella Guida per l'utente dello streaming a bassa latenza di IVS.

Chat Amazon IVS supporta tre elementi:

  • Operazioni: le operazioni delle policy per Chat Amazon IVS utilizzano il prefisso ivschat prima dell'operazione. Ad esempio, per concedere a qualcuno l'autorizzazione per creare una chat room Chat Amazon IVS con il metodo API CreateRoom di Chat Amazon IVS, includi l'operazione ivschat:CreateRoom nella policy di quella persona. Le istruzioni della policy devono includere un elemento Action o NotAction.

  • Risorse: la risorsa di chat room di Chat Amazon IVS dispone del seguente formato di ARN:

    arn:aws:ivschat:${Region}:${Account}:room/${roomId}

    Ad esempio, per specificare la chat room VgNkEJgOVX9N nell'istruzione, utilizza il seguente ARN:

    "Resource": "arn:aws:ivschat:us-west-2:123456789012:room/VgNkEJgOVX9N"

    Alcune operazioni Chat Amazon IVS, ad esempio quelle per la creazione di risorse, non possono essere eseguite su una risorsa specifica. In questi casi, è necessario utilizzare il carattere jolly (*):

    "Resource":"*"
  • Condizioni: Chat Amazon IVS supporta alcune chiavi di condizione globali: aws:RequestTag, aws:TagKeys e aws:ResourceTag.

È possibile utilizzare le variabili come segnaposto in una policy. Ad esempio, puoi concedere a un utente IAM l'autorizzazione per accedere a una risorsa solo se questo è stata taggata con il relativo nome utente IAM. Consulta Variabili e tag nella Guida per l'utente di IAM.

Amazon IVS fornisce policy gestite da AWS che possono essere utilizzate per concedere un insieme preconfigurato di autorizzazioni alle identità (sola lettura o accesso completo). È possibile scegliere di utilizzare policy gestite anziché basate sull'identità mostrate di seguito. Per i dettagli, consulta Policy gestite per Chat Amazon IVS.

Autorizzazione basata su tag Amazon IVS

Puoi collegare i tag alle risorse Chat Amazon IVS o inoltrarli in una richiesta a Chat Amazon IVS. Per controllare l'accesso basato su tag, fornisci informazioni sui tag nell'elemento condizione di una policy utilizzando le chiavi di condizione aws:ResourceTag/key-name, aws:RequestTag/key-name o aws:TagKeys. Per ulteriori informazioni sull'applicazione di tag alle risorse Chat Amazon IVS, consulta la sezione Assegnazione di tag nella Documentazione di riferimento delle API di Amazon IVS.

Roles

Consulta le sezioni Ruoli IAM e Credenziali di sicurezza temporanee nella Guida per l'utente di IAM.

Un ruolo IAM è un'entità all'interno dell'account AWS che dispone di autorizzazioni specifiche.

Amazon IVS supporta l'uso di credenziali di sicurezza temporanee. Puoi utilizzare le credenziali temporanee per effettuare l'accesso utilizzando la federazione, assumere un ruolo IAM o assumere un ruolo tra più account. Puoi ottenere credenziali di sicurezza temporanee richiamando le operazioni dell'API AWS Security Token Service, ad esempio AssumeRole o GetFederationToken.

Accesso con privilegi e senza privilegi

Le risorse API hanno un accesso con privilegi. L'accesso alla riproduzione senza privilegi può essere configurato tramite canali privati; consulta la pagina Configurazione di canali privati IVS.

Best practice per le policy

Consulta la sezione Best practice IAM nella Guida per l'utente di IAM.

Le policy basate su identità sono molto potenti. Esse determinano se qualcuno può creare, accedere o eliminare risorse Amazon IVS nell'account. Queste operazioni possono comportare costi aggiuntivi per l'account AWS. Segui questi suggerimenti:

  • Assegna il privilegio minimo: quando crei policy personalizzate, concedi solo le autorizzazioni richieste per eseguire un'attività. Inizia con un set di autorizzazioni minimo e concedi autorizzazioni aggiuntive quando necessario. Ciò è più sicuro che iniziare con autorizzazioni che sono troppo permissive e cercare di limitarle in un secondo momento. In particolare, conserva ivschat:* per l'accesso amministratore; non utilizzarlo nelle applicazioni.

  • Abilitare MFA (Multi-Factor Authentication) per operazioni sensibili: per una maggiore sicurezza, richiedi agli utenti IAM di utilizzare l'autenticazione a più fattori (MFA) per accedere a risorse o operazioni API sensibili.

  • Utilizza le condizioni della policy per ulteriore sicurezza: per quanto possibile, definisci le condizioni per cui le policy basate su identità consentono l'accesso a una risorsa. Ad esempio, è possibile scrivere condizioni per specificare un intervallo di indirizzi IP consentiti dai quali deve provenire una richiesta. È anche possibile scrivere condizioni per consentire solo le richieste all'interno di un intervallo di date o ore specificato oppure per richiedere l'utilizzo di SSL o MFA.

Esempi di policy basate su identità

Utilizza la console Amazon IVS

Per accedere alla console Amazon IVS, devi disporre di un set minimo di autorizzazioni che consentono di elencare e visualizzare i dettagli sulle risorse Chat Amazon IVS nel tuo account AWS. Se crei una policy basata su identità più restrittiva delle autorizzazioni minime richieste, la console non funzionerà nel modo previsto per le identità associate a tale policy. Per garantire l'accesso alla console Amazon IVS, collega le seguenti policy alle identità (consulta Aggiunta e rimozione di autorizzazioni IAM nellaGuida per l'utente di IAM).

Le parti della policy riportata di seguito consentono l'accesso a:

  • Tutti gli endpoint API di Chat Amazon IVS

  • Le tue Service Quotas di Chat Amazon IVS

  • Elenco delle lambda e aggiunta delle autorizzazioni per la lambda scelta per la moderazione di Amazon IVS Chat

  • Amazon Cloudwatch per ottenere parametri per la sessione di chat

{ "Version": "2012-10-17", "Statement": [ { "Action": "ivschat:*", "Effect": "Allow", "Resource": "*" }, { "Action": [ "servicequotas:ListServiceQuotas" ], "Effect": "Allow", "Resource": "*" }, { "Action": [ "cloudwatch:GetMetricData" ], "Effect": "Allow", "Resource": "*" }, { "Action": [ "lambda:AddPermission", "lambda:ListFunctions" ], "Effect": "Allow", "Resource": "*" } ] }

Policy basata su risorse per Amazon IVS Chat

Devi concedere al servizio Amazon IVS Chat l'autorizzazione per richiamare la risorsa lambda per revisionare i messaggi. A tal fine, segui le istruzioni in Utilizzo delle policy basate su risorse per AWS Lambda (nella Guida per lo sviluppatore di AWS Lambda) e compila i campi come specificato di seguito.

Per controllare l'accesso alla risorsa lambda, puoi utilizzare condizioni basate su:

  • SourceArn: la nostra policy di esempio utilizza un carattere jolly (*) per consentire a tutte le stanze del tuo account di richiamare la risorsa lambda. Facoltativamente, puoi specificare una stanza nel tuo account per consentire solo a quella stanza di richiamare la risorsa lambda.

  • SourceAccount: nella policy di esempio seguente, l'ID dell'account AWS è 123456789012.

{ "Version": "2012-10-17", "Statement": [ { "Principal": { "Service": "ivschat.amazonaws.com" }, "Action": [ "lambda:InvokeFunction" ], "Effect": "Allow", "Resource": "arn:aws:lambda:us-west-2:123456789012:function:name", "Condition": { "StringEquals": { "AWS:SourceAccount": "123456789012" }, "ArnLike": { "AWS:SourceArn": "arn:aws:ivschat:us-west-2:123456789012:room/*" } } } ] }

Risoluzione dei problemi

Consulta la pagina Risoluzione dei problemi nella Guida per l'utente dello streaming a bassa latenza di IVS per informazioni sulla diagnosi e la risoluzione dei problemi comuni che possono verificarsi durante l'utilizzo di Chat Amazon IVS e IAM.