Aiutaci a migliorare questa pagina
Vuoi contribuire a questa guida per l'utente? Scorri fino alla fine di questa pagina e seleziona Modifica questa pagina su GitHub. I tuoi contributi contribuiranno a rendere la nostra guida utente migliore per tutti.
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à.
Concedi agli utenti l'accesso Kubernetes con un OIDC provider esterno
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'utilizzoIAM, vedereConcedi a IAM utenti e ruoli l'accesso a Kubernetes APIs. 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 Using RBAC Authorization
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'emittente URL del provider di OIDC identità deve essere accessibile al pubblico, in modo che Amazon EKS possa scoprire le chiavi di firma. Amazon EKS non supporta provider di OIDC identità con certificati autofirmati.
-
Non puoi disabilitare IAM l'autenticazione del cluster, perché è ancora necessaria per unire i nodi a un cluster.
-
Un EKS cluster Amazon deve comunque essere creato da un utente AWS IAMprincipale, anziché da un utente di OIDC identity provider. Questo perché il creatore del cluster interagisce con Amazon EKSAPIs, anziché con. Kubernetes APIs
-
OIDCgli utenti autenticati dal provider di identità sono elencati nel registro di controllo del cluster se CloudWatch i log sono attivati per il piano di controllo. Per ulteriori informazioni, consulta Abilitare o disabilitare i 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:
- Emittente URL
-
Il provider URL di OIDC identità che consente al API server di scoprire le chiavi di firma pubbliche per la verifica dei token. URLDeve iniziare con
https://
e deve corrispondere aliss
reclamo contenuto nei token OIDC ID del provider. In conformità con OIDC lo standard, i componenti del percorso sono consentiti ma i parametri di interrogazione no. In genere URL è costituito solo da un nome host, ad esempiohttps://server.example.org
ohttps://example.com
. Questo URL dovrebbe puntare al livello inferiore.well-known/openid-configuration
e deve essere accessibile al pubblico su Internet. - ID client (noto anche come pubblico)
-
L'ID dell'applicazione client che effettua le richieste di autenticazione al provider di OIDC identità.
È possibile associare un provider di identità utilizzando eksctl
o il AWS Management Console.
IAMPolitica di esempio
Se desideri impedire che un provider di OIDC identità venga associato a un cluster, crea e associa la seguente IAM politica agli IAM account dei tuoi EKS amministratori Amazon. Per ulteriori informazioni, consulta Creazione IAM di politiche e aggiunta di autorizzazioni di IAM identità nella Guida per l'IAMutente e Azioni, risorse e chiavi di condizione per Amazon Elastic Kubernetes Service nel 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 intrattiene relazioni con una rete di partner che offrono supporto per provider di OIDC identità compatibili. Consulta la seguente documentazione dei partner per i dettagli su come integrare l'identity provider con Amazon. EKS
Partner | Product | Documentazione |
---|---|---|
PingIdentity |
Amazon EKS mira a offrirti un'ampia selezione 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