Perché ricevo l'errore "Invalid principal in policy" quando provo ad aggiornare la policy del mio bucket Amazon S3?
Quando provo ad aggiungere o modificare la policy del mio bucket Amazon Simple Storage Service (Amazon S3), ricevo l'errore Invalid principal in policy".
Risoluzione
Nota: se ricevi errori quando esegui i comandi dell'Interfaccia della linea di comando AWS (AWS CLI), consulta Risoluzione degli errori relativi ad AWS CLI. Inoltre, assicurati di utilizzare la versione più recente di AWS CLI.
Se la policy del bucket Amazon S3 contiene un valore non valido dell'elemento Principale, ricevi l'errore "Invalid principal in policy". Per risolvere l'errore, segui questi passaggi.
Verifica che la policy del bucket utilizzi valori supportati per l'elemento Principal
Assicurati di specificare i seguenti valori supportati per l'elemento Principal nella policy del bucket S3:
- L'ARN di un utente o di un ruolo AWS Identity and Access Management (AWS IAM)
Nota: per trovare l'ARN di un utente IAM, esegui il comando AWS CLI get-user. Per trovare l'ARN di un ruolo IAM, esegui il comando get-role. - L'ID di un account AWS o i principali del servizio AWS
- Il carattere jolly (\ *) per rappresentare tutti gli utenti
Nota: se utilizzi il carattere jolly (\ *) come elemento Principal viene concesso l'accesso a tutti gli utenti autenticati e anonimi.
Verifica che il valore Principal sia formattato correttamente
Verifica che gli elementi Principal della policy del bucket siano formattati correttamente. Se l'elemento Principal include un utente, utilizza il seguente formato:
"Principal": { "AWS": "arn:aws:iam::111111111111:user/user-name1" }
Nota: sostituisci user-name1 con il nome del tuo utente IAM.
Se l'elemento Principal include più di un utente o un ruolo IAM, utilizza il seguente formato:
"Principal": { "AWS": [ "arn:aws:iam::111111111111:user/user-name1", "arn:aws:iam::111111111111:role/role-name1" ] }
Nota: sostituisci user-name1 con il nome del tuo utente IAM e role-name1 con il nome del tuo ruolo IAM.
Se l'elemento Principal include tutti gli utenti, utilizza il seguente formato:
{ "Principal": "*" }
Nota: È consigliabile non utilizzare un carattere jolly (*) nell'elemento Principal di una policy basata sulle risorse con effetto Consenti. Utilizza il carattere jolly (\ *) solo per concedere un accesso pubblico o anonimo. Specifica i principali, i servizi o gli account AWS previsti nell'elemento Principal. Quindi utilizza l'elemento Condition per limitare l'accesso.
Assicurati che l'utente o il ruolo IAM non sia stato eliminato
Se tenti di salvare la policy del bucket con un identificatore univoco come elemento Principal, viene visualizzato l'errore "Invalid principal in policy". Questo perché l'elemento Principal supporta solo ARN IAM validi. Per risolvere l'errore, devi rimuovere qualsiasi identificatore univoco dall'elemento Principal.
Se la policy del bucket include utenti o ruoli IAM nell'elemento Principal, verifica che tali identità IAM non siano state eliminate. Per identificare gli utenti e i ruoli IAM eliminati nella policy del bucket, specifica gli identificatori univoci anziché gli ARN completi nell'elemento Principal.
Esempio:
"Principal": { "AWS": [ "arn:aws:iam::111111111111:user/user-name1", "AIDAJQABLZS4A3QDU576Q", "arn:aws:iam::111111111111:user/user-name2" ] }
Nota: sostituisci user-name1 e user-name2 con i nomi dei tuoi utenti IAM.
Verifica che l'account del principale IAM abbia una Regione attivata
Se il bucket si trova in una Regione AWS che AWS non attiva per impostazione predefinita, verifica di aver attivato la Regione nell'account del principale IAM. Per ulteriori informazioni, consulta Abilita o disabilita Regioni AWS nel tuo account.
Utilizza lo strumento di analisi degli accessi AWS IAM per convalidare l'accesso al bucket
Per convalidare l'accesso ai bucket S3 prima di distribuire le autorizzazioni, utilizza lo strumento di analisi degli accessi AWS Identity and Access Management. Puoi esaminare le policy dei bucket S3 che concedono risorse da un altro account AWS.
Puoi anche utilizzare lo strumento di analisi degli accessi AWS IAM per analizzare gli eventi di AWS CloudTrail e generare una policy IAM basata su tale attività. Per ulteriori informazioni, consulta Generazione di policy per lo strumento di analisi degli accessi AWS IAM.
Per attivare lo strumento di analisi degli accessi AWS IAM, consulta Nozioni di base sullo strumento di analisi degli accessi AWS Identity and Access Management.
Nota: AWS ti addebita ogni mese le analisi degli accessi non utilizzate che crei. Per ulteriori informazioni, consulta Prezzi dello strumento di analisi degli accessi AWS IAM.
Per risolvere i problemi relativi alle autorizzazioni dello strumento di analisi degli accessi AWS IAM, consulta How do I resolve permission issues with policies generated from IAM Access Analyzer? (Come posso risolvere i problemi di autorizzazione con le policy generate dallo strumento di analisi degli accessi AWS IAM?)
- Argomenti
- Storage
- Lingua
- Italiano
Video correlati

