Amministrazione di utenti, gruppi e diritti di accesso user-group-and-access-rights-administration

L’abilitazione dell’accesso a un archivio CRX prevede diversi argomenti:

Gli elementi di base sono:

Account utente - CRX autentica l'accesso identificando e verificando un utente (tramite una persona o un'altra applicazione) in base ai dettagli contenuti nell'account utente.

In CRX, ogni account utente è un nodo nell’area di lavoro. Un account utente di CRX dispone delle seguenti proprietà:

  • Rappresenta un utente di CRX.

  • Contiene un nome utente e una password.

  • Applicabile a tale area di lavoro.

  • Non possono essere presenti utenti secondari. Per i diritti di accesso gerarchici, è necessario utilizzare i gruppi.

  • È possibile specificare i diritti di accesso per l'account utente.

    Tuttavia, per semplificare la gestione, Adobe consiglia di assegnare (nella maggior parte dei casi) i diritti di accesso agli account dei gruppi. L’assegnazione dei diritti di accesso a ogni singolo utente diventa rapidamente difficile da gestire (le eccezioni sono determinate dagli utenti del sistema quando esistono solo una o due istanze).

Account gruppo - Gli account gruppo sono insiemi di utenti e/o altri gruppi. Questi vengono utilizzati per semplificare la gestione in quanto una modifica dei diritti di accesso assegnati a un gruppo viene applicata automaticamente a tutti gli utenti di tale gruppo. Un utente non deve necessariamente appartenere a nessun gruppo, ma spesso appartiene a più gruppi.

In CRX, un gruppo ha le seguenti proprietà:

  • Rappresenta un gruppo di utenti con diritti di accesso comuni. Ad esempio, autori o sviluppatori.
  • Applicabile a tale area di lavoro.
  • Può avere membri; questi possono essere singoli utenti o altri gruppi.
  • Il raggruppamento gerarchico può essere ottenuto con le relazioni tra i membri. Non è possibile inserire un gruppo direttamente sotto un altro gruppo nell'archivio.
  • È possibile definire i diritti di accesso per tutti i membri del gruppo.

Diritti di accesso - CRX utilizza i diritti di accesso per controllare l'accesso ad aree specifiche dell'archivio.

Questa operazione viene eseguita assegnando i privilegi per consentire o negare l’accesso a una risorsa (nodo o percorso) nell’archivio. Poiché è possibile assegnare vari privilegi, questi devono essere valutati per determinare quale combinazione è applicabile alla richiesta corrente.

CRX consente di configurare i diritti di accesso sia per gli account utente che per quelli di gruppo. Gli stessi principi di base di valutazione sono poi applicati a entrambi.

Valutazione dei diritti di accesso how-access-rights-are-evaluated

NOTE
CRX implementa il controllo degli accessi come definito da JSR-283.
Un’installazione standard di un archivio CRX è configurata per utilizzare elenchi di controllo di accesso basati sulle risorse. Questa è una possibile implementazione del controllo degli accessi JSR-283 e una delle implementazioni presenti con Jackrabbit.

Soggetti e oggetti principali subjects-and-principals

CRX utilizza due concetti chiave per valutare i diritti di accesso:

  • Un'entità principal è un'entità che dispone di diritti di accesso. Gli utenti/gruppi/ruoli includono:

    • Un account utente

    • Un account di gruppo

      Se un account utente appartiene a uno o più gruppi, viene associato anche a ciascuno di tali gruppi principali.

  • oggetto utilizzato per rappresentare l'origine di una richiesta.

    Viene utilizzato per consolidare i diritti di accesso applicabili a tale richiesta. Questi sono presi da:

    • Entità utente principale

      I diritti assegnati direttamente all’account utente.

    • Tutte le entità di gruppo associate all'utente

      Tutti i diritti vengono assegnati a uno qualsiasi dei gruppi a cui appartiene l'utente.

    Il risultato viene quindi utilizzato per consentire o negare l’accesso alla risorsa richiesta.

Compilazione dell'elenco dei diritti di accesso per un oggetto compiling-the-list-of-access-rights-for-a-subject

In CRX, l’argomento dipende da:

  • entità utente
  • tutte le entità di gruppo associate a tale utente

L’elenco dei diritti di accesso applicabili al soggetto è costituito da:

  • i diritti assegnati direttamente all’account utente
  • più tutti i diritti assegnati a uno qualsiasi dei gruppi a cui appartiene l'utente

chlimage_1-56

NOTE
  • CRX non tiene conto di alcuna gerarchia di utenti durante la compilazione dell’elenco.
  • CRX utilizza una gerarchia di gruppi solo quando si include un gruppo come membro di un altro gruppo. Non esiste ereditarietà automatica delle autorizzazioni del gruppo.
  • L'ordine in cui si specificano i gruppi non influisce sui diritti di accesso.

Risoluzione di richieste e diritti di accesso resolving-request-and-access-rights

Quando CRX gestisce la richiesta, confronta la richiesta di accesso dal soggetto con l’elenco di controllo di accesso sul nodo dell’archivio:

Pertanto, se Linda richiede di aggiornare il nodo /features nella seguente struttura dell'archivio:

chlimage_1-57

Ordine di precedenza order-of-precedence

I diritti di accesso in CRX vengono valutati come segue:

  • Le entità utente hanno sempre la precedenza sulle entità gruppo indipendentemente da:

    • l’ordine nell’elenco di controllo di accesso
    • la loro posizione nella gerarchia dei nodi
  • Per una determinata entità principale, esiste (al massimo) una negazione e 1 consenti l’ingresso in un determinato nodo. L’implementazione cancella sempre le voci ridondanti e si assicura che lo stesso privilegio non sia elencato sia nelle voci consentite che in quelle negate.

NOTE
Questo processo di valutazione è appropriato per il controllo degli accessi basato sulle risorse di un'installazione standard di CRX.

Prendendo due esempi in cui l'utente aUser è membro del gruppo aGroup:

   + parentNode
     + acl
       + ace: aUser - deny - write
     + childNode
       + acl
         + ace: aGroup - allow - write
       + grandChildNode

Nel caso di cui sopra:

  • A aUser non è concessa l'autorizzazione di scrittura per grandChildNode.
   + parentNode
     + acl
       + ace: aUser - deny - write
     + childNode
       + acl
         + ace: aGroup - allow - write
         + ace: aUser - deny - write
       + grandChildNode

In questo caso:

  • A aUser non è concessa l'autorizzazione di scrittura per grandChildNode.
  • La seconda voce ACE per aUser è ridondante.

I diritti di accesso di più entità di gruppo vengono valutati in base al loro ordine, sia all'interno della gerarchia che all'interno di un singolo elenco di controllo di accesso.

Best practice best-practices

La tabella seguente elenca alcuni consigli e best practice:

Consiglio...
Motivo...
Usa gruppi

Evita di assegnare i diritti di accesso utente per utente. Questo può essere dovuto a diversi motivi:

  • Poiché il numero di utenti è superiore a quello dei gruppi, la struttura dei gruppi risulta semplificata.
  • I gruppi forniscono una panoramica su tutti gli account.
  • L’ereditarietà è più semplice con i gruppi.
  • Gli utenti vanno e vengono. I gruppi sono a lungo termine.
Sii Positivo

Utilizzare sempre le istruzioni Allow per specificare i diritti di accesso dell'entità di gruppo, se possibile. Evita di utilizzare un’istruzione Deny.

Le entità di gruppo vengono valutate in ordine, sia all'interno della gerarchia che nell'ordine all'interno di un singolo elenco di controllo di accesso.

Semplifica

Investire un po 'di tempo e di pensiero durante la configurazione di una nuova installazione è ben ripagato.

L'applicazione di una struttura chiara semplifica la manutenzione e l'amministrazione in corso, garantendo che sia i colleghi attuali che i futuri successori possano comprendere facilmente ciò che viene implementato.

Test
Utilizza un’installazione di test per esercitarti e assicurarti di comprendere le relazioni tra i vari utenti e gruppi.
Utenti/gruppi predefiniti
Aggiorna sempre Utenti e gruppi predefiniti subito dopo l'installazione per evitare problemi di sicurezza.

Amministrazione utente user-administration

Viene utilizzata una finestra di dialogo standard per Amministrazione utenti.

Devi aver effettuato l’accesso all’area di lavoro appropriata, quindi puoi accedere alla finestra di dialogo da entrambi:

  • il collegamento Amministrazione utenti nella console principale di CRX
  • il menu Sicurezza di CRX Explorer

chlimage_1-58

Proprietà

  • ID utente

    Quando si accede a CRX, viene utilizzato un nome breve per l’account.

  • Nome entità

    Nome di testo completo dell'account.

  • Password

    Necessario per accedere a CRX con questo account.

  • ntlmhash

    Assegnato automaticamente per ogni nuovo account e aggiornato quando la password viene cambiata.

  • Puoi aggiungere nuove proprietà definendo un nome, un tipo e un valore. Fai clic su Salva (simbolo di graduazione verde) per ogni nuova proprietà.

Appartenenza al gruppo

In questo modo vengono visualizzati tutti i gruppi a cui appartiene l’account. La colonna Ereditato indica l'appartenenza ereditata a seguito dell'appartenenza a un altro gruppo.

Facendo clic su un GroupID (se disponibile) si apre Group Administration per quel gruppo.

Impersonatori

Con la funzionalità Impersona un utente può lavorare per conto di un altro utente.

Ciò significa che un account utente può specificare altri account (utente o gruppo) che possono operare con il proprio account. In altre parole, se l’utente B può rappresentare l’utente A, allora l’utente B può agire utilizzando i dettagli completi dell’account dell’utente A (inclusi ID, nome e diritti di accesso).

Questo consente agli account di rappresentazione di completare le attività come se stessero utilizzando l’account che impersonano; ad esempio, durante un’assenza o per condividere un carico eccessivo a breve termine.

Se un account ne rappresenta un altro, è difficile visualizzarlo. I file di registro non contengono informazioni sul fatto che la rappresentazione si sia verificata sugli eventi. Pertanto, se l’utente B rappresenta l’utente A, tutti gli eventi possono avere l’aspetto di essere eseguiti personalmente dall’utente A.

Creazione di un account utente creating-a-user-account

  1. Apri la finestra di dialogo Amministrazione utenti.

  2. Fare clic su Crea utente.

  3. Puoi quindi immettere le Proprietà:

    • UserID utilizzato come nome account.
    • Password richiesta per l'accesso.
    • Nome entità per fornire un nome completo.
    • Percorso intermedio che può essere utilizzato per formare una struttura ad albero.
  4. Fai clic su Salva (simbolo di spunta verde).

  5. La finestra di dialogo viene espansa in modo da consentire le seguenti operazioni:

    1. Configura Proprietà.
    2. Consulta Iscrizione al gruppo.
    3. Definisci Impersonatori.
NOTE
Talvolta si osserva una perdita di prestazioni quando si registrano nuovi utenti in installazioni con un numero elevato di entrambi:
  • utenti
  • gruppi con molti membri

Aggiornamento di un account utente updating-a-user-account

  1. Con la finestra di dialogo Amministrazione utenti, apri la visualizzazione elenco di tutti gli account.
  2. Navigare nella struttura ad albero.
  3. Fai clic sull’account richiesto per aprirlo per la modifica.
  4. Apporta una modifica, quindi fai clic su Salva (simbolo di spunta verde) per quella voce.
  5. Fai clic su Chiudi per terminare oppure su Elenco… per tornare all'elenco di tutti gli account utente.

Rimozione di un account utente removing-a-user-account

  1. Con la finestra di dialogo Amministrazione utenti, apri la visualizzazione elenco di tutti gli account.
  2. Navigare nella struttura ad albero.
  3. Selezionare l'account richiesto e fare clic su Rimuovi utente. L'account verrà eliminato immediatamente.
NOTE
Questo rimuove il nodo per questa entità dall’archivio.
Le voci relative ai diritti di accesso non vengono rimosse. Ciò garantisce l’integrità storica.

Definizione delle proprietà defining-properties

Puoi definire Proprietà per account nuovi o esistenti:

  1. Apri la finestra di dialogo Amministrazione utenti per l'account appropriato.
  2. Definisci un nome di proprietà.
  3. Selezionare Tipo dall'elenco a discesa.
  4. Definisci il valore.
  5. Fai clic su Salva (simbolo di clic verde) per la nuova proprietà.

Le proprietà esistenti possono essere eliminate con il simbolo del cestino.

Ad eccezione della password, le proprietà non possono essere modificate, devono essere eliminate e ricreate.

Modifica della password changing-the-password

La password è una proprietà speciale che può essere modificata facendo clic sul collegamento Cambia password.

Puoi anche modificare la password per il tuo account utente dal menu Sicurezza in Esplora risorse di CRX.

Definizione di una rappresentazione defining-an-impersonator

Puoi definire gli impersonatori per account nuovi o esistenti:

  1. Apri la finestra di dialogo Amministrazione utenti per l'account appropriato.

  2. Specifica l’account che può rappresentare tale account.

    Puoi usare Sfoglia… per selezionare un account esistente.

  3. Fai clic su Salva (simbolo di spunta verde) per la nuova proprietà.

Amministrazione gruppo group-administration

Finestra di dialogo standard utilizzata per Amministrazione gruppo.

Devi aver effettuato l’accesso all’area di lavoro appropriata, quindi puoi accedere alla finestra di dialogo da entrambi:

  • il collegamento Amministrazione gruppo nella console principale di CRX
  • il menu Sicurezza di CRX Explorer

chlimage_1-8

Proprietà

  • ID gruppo

    Nome breve dell'account del gruppo.

  • Nome entità

    Nome di testo completo per l'account di gruppo.

  • Puoi aggiungere nuove proprietà definendo un nome, un tipo e un valore. Fai clic su Salva (simbolo di graduazione verde) per ogni nuova proprietà.

  • Membri

    È possibile aggiungere utenti o altri gruppi come membri di questo gruppo.

Appartenenza al gruppo

In questo modo vengono visualizzati tutti i gruppi a cui appartiene il conto di gruppo corrente. La colonna Ereditato indica l'appartenenza ereditata a seguito dell'appartenenza a un altro gruppo.

Se si fa clic su un GroupID, viene visualizzata la finestra di dialogo relativa a tale gruppo.

Membri

Elenca tutti gli account (utenti e/o gruppi) che sono membri del gruppo corrente.

La colonna Ereditato indica l'appartenenza ereditata come risultato dell'appartenenza a un altro gruppo.

NOTE
Quando il ruolo Proprietario, Editor o Visualizzatore viene assegnato a un utente in una cartella di risorse, viene creato un nuovo gruppo. Il nome del gruppo è nel formato mac-default-<foldername> per ogni cartella in cui sono definiti i ruoli.

Creazione di un account di gruppo creating-a-group-account

  1. Apri la finestra di dialogo Amministrazione gruppo.

  2. Fai clic su Crea gruppo.

  3. Puoi quindi immettere le Proprietà:

    • Nome entità per fornire un nome completo.
    • Percorso intermedio che può essere utilizzato per formare una struttura ad albero.
  4. Fai clic su Salva (simbolo di spunta verde).

  5. La finestra di dialogo viene espansa in modo da poter:

    1. Configura Proprietà.
    2. Consulta Iscrizione al gruppo.
    3. Gestisci Membri.

Aggiornamento di un account di gruppo updating-a-group-account

  1. Con la finestra di dialogo Amministrazione gruppo, aprire la visualizzazione elenco di tutti gli account.
  2. Navigare nella struttura ad albero.
  3. Fai clic sull’account richiesto per aprirlo per la modifica.
  4. Apporta una modifica, quindi fai clic su Salva (simbolo di spunta verde) per quella voce.
  5. Fai clic su Chiudi per terminare oppure su Elenco… per tornare all'elenco di tutti gli account del gruppo.

Rimozione di un account di gruppo removing-a-group-account

  1. Con la finestra di dialogo Amministrazione gruppo, aprire la visualizzazione elenco di tutti gli account.
  2. Navigare nella struttura ad albero.
  3. Selezionare l'account richiesto e fare clic su Rimuovi gruppo. L'account verrà eliminato immediatamente.
NOTE
Questo rimuove il nodo per questa entità dall’archivio.
Le voci relative ai diritti di accesso non vengono rimosse. Ciò garantisce l’integrità storica.

Definizione delle proprietà defining-properties-1

Puoi definire le Proprietà per account nuovi o esistenti:

  1. Apri la finestra di dialogo Amministrazione gruppo per l'account appropriato.
  2. Definisci un nome di proprietà.
  3. Selezionare Tipo dall'elenco a discesa.
  4. Definisci il valore.
  5. Fai clic su Salva (simbolo di spunta verde) per la nuova proprietà.

Le proprietà esistenti possono essere eliminate con il simbolo del cestino.

Membri members

È possibile aggiungere membri al gruppo corrente:

  1. Apri la finestra di dialogo Amministrazione gruppo per l'account appropriato.

  2. Effettua una delle seguenti operazioni:

    • Immettere il nome del membro richiesto (account utente o di gruppo).
    • In alternativa, utilizzare Sfoglia… per cercare e selezionare l'entità principale (account utente o account di gruppo) che si desidera aggiungere.
  3. Fai clic su Salva (simbolo di spunta verde) per la nuova proprietà.

In alternativa, eliminare un membro esistente con il simbolo del cestino.

Gestione diritti di accesso access-right-management

Con la scheda Controllo di accesso di CRXDE Lite, puoi definire i criteri di controllo di accesso e assegnare i relativi privilegi.

Ad esempio, per Percorso corrente selezionare la risorsa richiesta nel riquadro sinistro, la scheda Controllo di accesso nel riquadro inferiore destro:

crx_accesscontrol_tab

I criteri sono suddivisi in categorie in base a:

  • Criteri di controllo dell'accesso applicabili

    Questi criteri possono essere applicati.

    Criteri disponibili per la creazione di un criterio locale. Quando selezioni e aggiungi un criterio applicabile, questo diventa un criterio locale.

  • Criteri di controllo dell'accesso locali

    Si tratta dei criteri di controllo di accesso applicati. Puoi quindi aggiornarli, ordinarli o rimuoverli.

    Un criterio locale sostituisce tutti i criteri ereditati dall'elemento padre.

  • Criteri di controllo dell'accesso effettivi

    Questi sono i criteri di controllo di accesso attualmente in vigore per qualsiasi richiesta di accesso. Mostrano i criteri aggregati derivati dai criteri locali e da quelli ereditati dal padre.

Selezione criteri policy-selection

I criteri possono essere selezionati per:

  • Percorso corrente

    Come nell’esempio precedente, seleziona una risorsa all’interno dell’archivio. Vengono visualizzati i criteri per questo "percorso corrente".

  • Archivio

    Seleziona il controllo dell'accesso a livello di repository. Ad esempio, quando si imposta il privilegio jcr:namespaceManagement, che è pertinente solo per l'archivio, non un nodo.

  • Entità

    Entità registrata nell'archivio.

    È possibile digitare il nome Ental oppure fare clic sull'icona a destra del campo per aprire la finestra di dialogo Seleziona entità.

    Ciò ti consente di cercare un Utente o un Gruppo. Selezionare l'entità richiesta dall'elenco risultante, quindi fare clic su OK per riportare il valore nella finestra di dialogo precedente.

crx_accesscontrol_selectprincipal

NOTE
Per semplificare la gestione, l'Adobe consiglia di assegnare i diritti di accesso agli account dei gruppi e non ai singoli account utente.
È più facile gestire alcuni gruppi, piuttosto che molti account utente.

Privilegi privileges

Durante l'aggiunta di una voce di controllo di accesso è possibile selezionare i privilegi seguenti (per informazioni dettagliate, vedere l'API di protezione):

Nome privilegio
Che controlla il privilegio di...
jcr:read
Recupera un nodo e leggi le relative proprietà e i relativi valori.
rep:write
Si tratta di un privilegio di aggregazione specifico per Jackrabbit di jcr:write e jcr:nodeTypeManagement.
jcr:all
Si tratta di un privilegio di aggregazione che contiene tutti gli altri privilegi predefiniti.
Avanzate
crx:replicate
Eseguire la replica di un nodo.
jcr:addChildNodes
Crea nodi secondari di un nodo.
jcr:lifecycleManagement
Eseguire operazioni del ciclo di vita su un nodo.
jcr:lockManagement
Blocca e sblocca un nodo; aggiorna un blocco.
jcr:modifyAccessControl
Modificare i criteri di controllo di accesso di un nodo.
jcr:modifyProperties
Creare, modificare e rimuovere le proprietà di un nodo.
jcr:namespaceManagement
Registra, annulla la registrazione e modifica le definizioni dello spazio dei nomi.
jcr:nodeTypeDefinitionManagement
Importa le definizioni dei tipi di nodo nel repository.
jcr:nodeTypeManagement
Aggiungi e rimuovi tipi di nodo mixin e modifica il tipo di nodo principale di un nodo. Sono incluse anche le chiamate ai metodi Node.addNode e di importazione XML in cui il tipo mixin o primario del nuovo nodo è specificato in modo esplicito.
jcr:readAccessControl
Leggi i criteri di controllo di accesso di un nodo.
jcr:removeChildNodes
Rimuovere i nodi secondari di un nodo.
jcr:removeNode
Rimuovere un nodo.
jcr:retentionManagement
Eseguire operazioni di gestione della conservazione su un nodo.
jcr:versionManagement
Eseguire operazioni di controllo delle versioni su un nodo.
jcr:workspaceManagement
La creazione e l’eliminazione delle aree di lavoro tramite l’API JCR.
jcr:write
Questo è un privilegio di aggregazione che contiene:
- jcr:modifyProperties
- jcr:addChildNodes
- jcr:removeNode
- jcr:removeChildNodes
rep:privilegeManagement
Registra un nuovo privilegio.

Registrazione di nuovi privilegi registering-new-privileges

È inoltre possibile registrare nuovi privilegi:

  1. Dalla barra degli strumenti, seleziona Strumenti, quindi Privilegi per visualizzare i privilegi attualmente registrati.

    ac_privilegi

  2. Utilizza l'icona Registra privilegio (+) per definire un privilegio:

    ac_privilegeregister

  3. Fare clic su OK per salvare. Il privilegio è ora disponibile per la selezione.

Aggiunta di una voce di controllo di accesso adding-an-access-control-entry

  1. Seleziona la risorsa e apri la scheda Controllo dell'accesso.

  2. Per aggiungere un nuovo Criteri di controllo di accesso locali, fare clic sull'icona + a destra dell'elenco Criteri di controllo di accesso applicabili:

    crx_accesscontrol_applicable

  3. Viene visualizzata una nuova voce in Criteri di controllo di accesso locali:

    crx_accesscontrol_newlocal

  4. Fai clic sull'icona + per aggiungere una voce:

    crx_accesscontrol_addentry

    note note
    NOTE
    Attualmente è necessaria una soluzione alternativa per specificare una stringa vuota.
    Per questo, devi utilizzare "".
  5. Definisci i criteri di controllo di accesso e fai clic su OK per salvare. Il nuovo criterio è:

    • elencato in Criteri di controllo di accesso locali
    • le modifiche si riflettono nei Criteri di controllo di accesso effettivi.

CRX convalida la selezione; per un determinato utente/gruppo/ruolo esiste (al massimo) un elemento deny e uno allow entry su un determinato nodo. L’implementazione cancella sempre le voci ridondanti e si assicura che lo stesso privilegio non sia elencato sia nelle voci consentite che in quelle negate.

Ordinamento dei criteri di controllo dell'accesso locale ordering-local-access-control-policies

L’ordine nell’elenco indica l’ordine in cui vengono applicati i criteri.

  1. Nella tabella dei Criteri di controllo di accesso locali, selezionare la voce richiesta e trascinarla nella nuova posizione nella tabella.

    crx_accesscontrol_reorder

  2. Le modifiche vengono visualizzate in entrambe le tabelle per Local e Effective Access Control Policies.

Rimozione di un criterio di controllo di accesso removing-an-access-control-policy

  1. Nella tabella dei Criteri di controllo di accesso locali fare clic sull'icona rossa (-) a destra della voce.
  2. La voce viene rimossa da entrambe le tabelle per Local e Effective Access Control Policies.

Verifica di un criterio di controllo degli accessi testing-an-access-control-policy

  1. Dalla barra degli strumenti di CRXDE Lite, seleziona Strumenti, quindi Verifica controllo accesso….

  2. Nel riquadro superiore destro viene visualizzata una nuova finestra di dialogo. Selezionare il Percorso e/o l'Entità che si desidera verificare.

  3. Fai clic su Test per visualizzare i risultati della selezione:

    crx_accesscontrol_test

recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2