Controllo degli accessi in base al ruolo di Azure nei cluster Kubernetes abilitati per Azure Arc
I tipi di oggetto ClusterRoleBinding e RoleBinding Kubernetes consentono di definire l'autorizzazione in Kubernetes in modo nativo. Con il controllo degli accessi in base al ruolo di Azure, è possibile usare Microsoft Entra ID e le assegnazioni di ruolo in Azure per gestire i controlli delle autorizzazioni nel cluster. Ciò consente di sfruttare i vantaggi delle assegnazioni di ruolo di Azure, ad esempio i log attività che indicano le modifiche a livello di controllo degli accessi in base al ruolo di Azure apportate a una risorsa Azure, da usare con i cluster Kubernetes abilitati per Azure Arc.
Architettura
Per instradare tutti i controlli degli accessi alle autorizzazioni al servizio di autorizzazione in Azure, nel cluster viene distribuito un server webhook (Guard).
L'oggetto apiserver
del cluster è configurato per l'uso dell'autenticazione del token webhook e dell'autorizzazione webhook in modo che le richieste TokenAccessReview
e SubjectAccessReview
vengano instradate al server webhook Guard. Le richieste TokenAccessReview
e SubjectAccessReview
vengono attivate dalle richieste di risorse Kubernetes inviate a apiserver
.
Guard effettua quindi una chiamata checkAccess
al servizio di autorizzazione in Azure per verificare se l'entità Microsoft Entra richiedente ha accesso alla risorsa pertinente.
Se tale entità ha un ruolo che consente l'accesso, viene inviata una risposta allowed
dal servizio di autorizzazione al server Guard. Guard, a sua volta, invia una risposta allowed
a apiserver
per consentire all'entità chiamante di accedere alla risorsa Kubernetes richiesta.
Se tale entità non ha un ruolo che consente l'accesso, viene inviata una risposta denied
dal servizio di autorizzazione al server Guard. Guard invia una risposta denied
a apiserver
, restituendo all'entità chiamante un errore 403 - Accesso negato per la risorsa richiesta.
Passaggi successivi
- Usare la guida introduttiva per connettere un cluster Kubernetes ad Azure Arc.
- Configurare il controllo degli accessi in base al ruolo di Azure nel cluster Kubernetes abilitato per Azure Arc.