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à.
Autentica gli utenti del tuo cluster da un provider di OpenID Connect identità
Amazon EKS supporta l'utilizzo di OpenID Connect (OIDC) provider di identità come metodo per autenticare gli utenti nel tuo cluster. OIDCi provider di identità possono essere utilizzati con o in alternativa a AWS Identity and Access Management (IAM). Per ulteriori informazioni sull'utilizzo di IAM, consultare Concedi l'accesso alle Kubernetes API . Dopo aver configurato l'autenticazione per il cluster, potrai creare roles
e clusterroles
Kubernetes per assegnare autorizzazioni ai ruoli e quindi associare i ruoli alle identità utilizzando rolebindings
e clusterrolebindings
Kubernetes. Per ulteriori informazioni, consulta Utilizzo dell'autorizzazione RBAC
Considerazioni
-
È possibile associare un provider di identità OIDC al cluster.
-
Kubernetes non fornisce un provider di identità OIDC. È possibile utilizzare un provider di identità OIDC pubblico esistente oppure eseguire il proprio provider di identità. Per un elenco dei provider certificati, consultare OpenID Certification
sul sito OpenID. -
L'URL dell'emittente del provider di identità OIDC deve essere accessibile pubblicamente, in modo che Amazon EKS possa individuare le chiavi di firma. Amazon EKS non supporta i provider di identità OIDC con certificati autofirmati.
-
Non è possibile disabilitare l'autenticazione IAM nel cluster, perché sarà ancora necessaria per aggiungere i nodi a un cluster.
-
Un cluster Amazon EKS deve comunque essere creato da un principale AWS IAM, anziché da un utente di un provider di OIDC identità. Questo perché il creatore del cluster interagisce con le API Amazon EKS, piuttosto che con le API Kubernetes.
-
OIDCgli utenti autenticati dal provider di identità vengono elencati nel registro di controllo del cluster se CloudWatch i log sono attivati per il piano di controllo. Per ulteriori informazioni, consulta Abilitazione e disabilitazione dei log del piano di controllo.
-
Non è possibile accedere a AWS Management Console con un account di un provider. OIDC Puoi visualizzare Kubernetes le risorse nella console solo accedendo AWS Management Console con un AWS Identity and Access Management account.
Associazione di un provider di identità OIDC
Prima di associare un provider di identità OIDC al cluster, è necessario ottenere dal provider le seguenti informazioni:
- URL dell'emittente
-
L'URL del provider di identità OIDC che consente al server API di individuare le chiavi di firma pubbliche per la verifica dei token. L'URL deve iniziare con
https://
e deve corrispondere alla richiestaiss
nei token ID OIDC del provider. In conformità con lo standard OIDC, i componenti del percorso sono consentiti, ma i parametri di query non lo sono. In genere l'URL è costituito solo da un nome host, comehttps://server.example.org
ohttps://example.com
. Questo URL dovrebbe puntare al livello sottostante.well-known/openid-configuration
e dovrà essere accessibile pubblicamente tramite Internet. - ID client (noto anche come pubblico)
-
L'ID per l'applicazione client che effettua richieste di autenticazione al provider di identità OIDC.
È possibile associare un provider di identità utilizzando eksctl
o il AWS Management Console.
Dissociazione di un provider di identità OIDC dal cluster
Se si dissocia un provider di identità OIDC dal cluster, gli utenti inclusi nel provider non potranno più accedere al cluster. Tuttavia, è comunque possibile accedere al cluster con principali IAM.
Per dissociare un provider di identità OIDC dal cluster utilizzando la AWS Management Console
-
Apri la console Amazon EKS all'indirizzo https://console.aws.amazon.com/eks/home#/clusters
. -
Nella sezione Provider di identità OIDC, seleziona Dissocia, inserisci il nome del provider di identità e quindi seleziona
Disassociate
.
Policy IAM di esempio
Se si desidera impedire che un provider di identità OIDC venga associato a un cluster, creare e associare le seguenti policy IAM agli account IAM degli amministratori Amazon EKS. Per ulteriori informazioni, consultare Creazione di policy IAM e Aggiunta autorizzazioni di identità IAM nella Guida per l'utente di IAM e Operazioni, risorse e chiavi di condizione per Amazon Elastic Kubernetes Service in Service Authorization Reference.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "denyOIDC", "Effect": "Deny", "Action": [ "eks:AssociateIdentityProviderConfig" ], "Resource": "arn:aws:eks:
us-west-2
.amazonaws.com:
111122223333
:cluster/*" }, { "Sid": "eksAdmin", "Effect": "Allow", "Action": [ "eks:*" ], "Resource": "*" } ] }
La seguente policy di esempio consente l'associazione del provider di identità OIDC se il clientID
è kubernetes
e la issuerUrl
è https://cognito-idp.us-west-2amazonaws.com/*
.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCognitoOnly", "Effect": "Deny", "Action": "eks:AssociateIdentityProviderConfig", "Resource": "arn:aws:eks:
us-west-2
:111122223333
:cluster/my-instance
", "Condition": { "StringNotLikeIfExists": { "eks:issuerUrl": "https://cognito-idp.us-west-2
.amazonaws.com/*" } } }, { "Sid": "DenyOtherClients", "Effect": "Deny", "Action": "eks:AssociateIdentityProviderConfig", "Resource": "arn:aws:eks:us-west-2
:111122223333
:cluster/my-instance
", "Condition": { "StringNotEquals": { "eks:clientId": "kubernetes
" } } }, { "Sid": "AllowOthers", "Effect": "Allow", "Action": "eks:*", "Resource": "*" } ] }
Provider di identità OIDC convalidati dai partner
Amazon EKS dispone di una rete di partner che offrono supporto per i provider di identità OIDC compatibili. Per informazioni dettagliate su come integrare il provider di identità con Amazon EKS, consulta la documentazione dei partner riportata di seguito.
Partner |
Product |
Documentazione |
---|---|---|
PingIdentity |
Amazon EKS mira a dare all'utente una vasta gamma di opzioni per coprire tutti i casi d'uso. Se sviluppi un provider di identità OIDC compatibile con supporto commerciale che non è elencato qui, contatta il nostro team partner all'indirizzo aws-container-partners@amazon .com