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à.
ACL Apache Kafka
Apache Kafka dispone di un autorizzatore collegabile e viene fornito con un'implementazione di autorizzazione. out-of-box Amazon MSK abilita questo provider di autorizzazioni nel file server.properties
sui broker.
Gli ACL di Apache Kafka hanno il formato «Principal P è [Consentita/Negata] Operazione O dall'host H su qualsiasi risorsa R corrispondente a RP». ResourcePattern Se RP non corrisponde a una risorsa R specifica, R non dispone di ACL associati e pertanto nessuno, a parte i superuser, è autorizzato ad accedere a R. Per modificare questo comportamento di Apache Kafka, impostare la proprietà allow.everyone.if.no.acl.found
su true. In Amazon MSK è impostata su true per impostazione predefinita. Ciò significa che nei cluster Amazon MSK, se non si impostano esplicitamente gli ACL su una risorsa, tutti i principali possono accedere a questa risorsa. Se si abilitano gli ACL su una risorsa, l'accesso è consentito solo ai principali autorizzati. Se si desidera limitare l'accesso a un argomento e autorizzare un client utilizzando l'autenticazione reciproca TLS, aggiungere ACL utilizzando l'interfaccia della riga di comando del provider di autorizzazioni Apache Kafka. Per ulteriori informazioni sull'aggiunta, la rimozione e l'elenco di ACL, consulta Kafka Authorization Command Line Interface
Oltre al client, è inoltre necessario concedere a tutti i broker l'accesso agli argomenti in modo che possano replicare i messaggi dalla partizione primaria. Se i broker non dispongono dell'accesso a un argomento, la replica per l'argomento non va a buon fine.
Per aggiungere o rimuovere l'accesso in lettura e scrittura a un argomento
-
Aggiungere i broker alla tabella ACL per consentire loro di leggere da tutti gli argomenti contenenti ACL. Per concedere ai broker l'accesso in lettura a un argomento, esegui il comando seguente su un computer client in grado di comunicare con il cluster MSK.
Sostituire
Distinguished-Name
con il DNS di un broker bootstrap del cluster qualsiasi, quindi sostituire la stringa prima del primo periodo in questo nome distinto mediante un asterisco (*
). Ad esempio, se il DNS di uno dei broker bootstrap del cluster èb-6.mytestcluster.67281x.c4.kafka.us-east-1.amazonaws.com
, sostituireDistinguished-Name
nel comando seguente con*.mytestcluster.67281x.c4.kafka.us-east-1.amazonaws.com
. Per informazioni su come ottenere i broker bootstrap, consulta Recupero dei broker di bootstrap per un cluster Amazon MSK.<path-to-your-kafka-installation>
/bin/kafka-acls.sh --authorizer-properties --bootstrap-server BootstrapServerString --add --allow-principal "User:CN=Distinguished-Name
" --operation Read --group=* --topicTopic-Name
-
Per concedere l'accesso in lettura a un argomento, eseguire il comando seguente sul computer client. Se utilizzi l'autenticazione TLS reciproca, utilizza lo stesso
Distinguished-Name
usato al momento della creazione della chiave privata.<path-to-your-kafka-installation>
/bin/kafka-acls.sh --authorizer-properties --bootstrap-server BootstrapServerString --add --allow-principal "User:CN=Distinguished-Name
" --operation Read --group=* --topicTopic-Name
Per rimuovere l'accesso in lettura, è possibile eseguire lo stesso comando, sostituendo
--add
con--remove
. -
Per concedere l'accesso in scrittura a un argomento, eseguire il comando seguente sul computer client. Se utilizzi l'autenticazione TLS reciproca, utilizza lo stesso
Distinguished-Name
usato al momento della creazione della chiave privata.<path-to-your-kafka-installation>
/bin/kafka-acls.sh --authorizer-properties --bootstrap-server BootstrapServerString --add --allow-principal "User:CN=Distinguished-Name
" --operation Write --topicTopic-Name
Per rimuovere l'accesso in scrittura, è possibile eseguire lo stesso comando, sostituendo
--add
con--remove
.