Gestione di utenti, ruoli e autorizzazioni

Il sito della documentazione di Apigee contiene informazioni dettagliate sulla gestione dei ruoli e delle autorizzazioni degli utenti. Gli utenti possono essere gestiti utilizzando sia la nuova UI di Edge sia l'API Management; i ruoli e le autorizzazioni possono essere gestiti solo con l'API Management.

Per informazioni sugli utenti e sulla creazione di utenti, vedi:

Molte delle operazioni che esegui per gestire gli utenti richiedono privilegi di amministratore di sistema. In un'installazione di Edge basata su cloud, Apigee svolge il ruolo di amministratore di sistema. In un'installazione di Edge per il cloud privato, l'amministratore di sistema deve eseguire queste attività come descritto di seguito.

Aggiungere un utente

Puoi creare un utente utilizzando l'API Edge, la nuova UI di Edge o i comandi Edge. Questa sezione descrive come utilizzare l'API Edge e i comandi Edge. Per informazioni sulla creazione di utenti nella nuova UI di Edge, vedi Creazione di utenti globali.

Dopo aver creato l'utente in un'organizzazione, devi assegnargli un ruolo. I ruoli determinano i diritti di accesso dell'utente su Edge.

Utilizza il seguente comando per creare un utente con l'API Edge:

curl -H "Content-Type:application/xml" \
  -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD -X POST http://ms_IP:8080/v1/users \
  -d '<User> \
    <FirstName>New</FirstName> \
    <LastName>User</LastName> \
    <Password>NEW_USER_PASSWORD</Password> \
    <EmailId>foo@bar.com</EmailId> \
  </User>'

In alternativa, utilizza il seguente comando Edge per creare un utente:

/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-user -f configFile

Dove configFile crea l'utente, come mostra l'esempio seguente:

APIGEE_ADMINPW=SYS_ADMIN_PASSWORD    # If omitted, you will be prompted.
USER_NAME=foo@bar.com
FIRST_NAME=New
LAST_NAME=User
USER_PWD="NEW_USER_PASSWORD"
ORG_NAME=myorg

Puoi quindi utilizzare questa chiamata per visualizzare le informazioni sull'utente:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com

Assegnare l'utente a un ruolo in un' organizzazione

Prima che un nuovo utente possa fare qualsiasi cosa, deve essere assegnato a un ruolo in un'organizzazione. Puoi assegnare all'utente ruoli diversi, tra cui: orgadmin, businessuser, opsadmin, user, o un ruolo personalizzato definito nell'organizzazione.

L'assegnazione di un utente a un ruolo in un'organizzazione lo aggiunge automaticamente all' organizzazione. Assegna un utente a più organizzazioni assegnandogli un ruolo in ogni organizzazione.

Utilizza il seguente comando per assegnare l'utente a un ruolo in un'organizzazione:

curl -X POST -H "Content-Type:application/x-www-form-urlencoded" \
  http://ms_IP:8080/v1/o/org_name/userroles/role/users?id=foo@bar.com \
  -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD

Questa chiamata mostra tutti i ruoli assegnati all'utente. Se vuoi aggiungere l'utente, ma visualizzare solo il nuovo ruolo, utilizza la seguente chiamata:

curl -X POST -H "Content-Type: application/xml" \
  http://ms_IP:8080/v1/o/org_name/users/foo@bar.com/userroles \
  -d '<Roles><Role name="role"/><Roles>' \
  -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD

Puoi visualizzare i ruoli dell'utente utilizzando il seguente comando:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/userroles

Per rimuovere un utente da un'organizzazione, rimuovi tutti i ruoli dell'utente in quell'organizzazione. Utilizza il seguente comando per rimuovere un ruolo da un utente:

curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
  http://ms_IP:8080/v1/o/org_name/userroles/role/users/foo@bar.com

Aggiungere un amministratore di sistema

Un amministratore di sistema può:

  • Creare organizzazioni
  • Aggiungere router, processore di messaggi e altri componenti a un'installazione di Edge
  • Configurare TLS/SSL
  • Creare amministratori di sistema aggiuntivi
  • Eseguire tutte le attività amministrative di Edge

Sebbene un solo utente sia l'utente predefinito per le attività amministrative, possono esistere più amministratori di sistema. Qualsiasi utente membro del ruolo "sysadmin" dispone di autorizzazioni complete per tutte le risorse.

Puoi creare l'utente per l'amministratore di sistema nella nuova UI di Edge o nell'API. Tuttavia, devi utilizzare l'API Edge per assegnare all'utente il ruolo di "sysadmin". L'assegnazione di un utente al ruolo "sysadmin" non può essere eseguita nella nuova UI di Edge.

Per aggiungere un amministratore di sistema:

  1. Crea un utente nella nuova UI di Edge o nell'API.
  2. Aggiungi l'utente al ruolo "sysadmin":
    curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
      -X POST http://ms_IP:8080/v1/userroles/sysadmin/users -d 'id=foo@bar.com'
  3. Assicurati che il nuovo utente abbia il ruolo "sysadmin":
    curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users

    Restituisce l'indirizzo email dell'utente:

    [ " foo@bar.com " ]
  4. Controlla le autorizzazioni del nuovo utente:
    curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/permissions

    Restituisce:

    {
      "resourcePermission" : [ {
      "path" : "/",
        "permissions" : [ "get", "put", "delete" ]
      } ]
    }
  5. Dopo aver aggiunto il nuovo amministratore di sistema, puoi aggiungere l'utente a qualsiasi organizzazione.
  6. Se in un secondo momento vuoi rimuovere l'utente dal ruolo di amministratore di sistema, puoi utilizzare la seguente API:
    curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
      http://ms_IP:8080/v1/userroles/sysadmin/users/foo@bar.com

    Tieni presente che questa chiamata rimuove solo l'utente dal ruolo, non lo elimina.

Modificare l'utente amministratore di sistema predefinito

Quando installi Edge, devi specificare l'indirizzo email dell'amministratore di sistema. Edge crea un utente con questo indirizzo email e lo imposta come amministratore di sistema predefinito. In un secondo momento puoi aggiungere altri amministratori di sistema come descritto sopra.

Questa sezione descrive come modificare l'amministratore di sistema predefinito in modo che sia un utente diverso, e come modificare l'indirizzo email dell'account utente per l'amministratore di sistema predefinito corrente.

Per visualizzare l'elenco degli utenti attualmente configurati come amministratori di sistema, utilizza la seguente chiamata API call:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users

Per determinare l'amministratore di sistema predefinito corrente, visualizza il /opt/apigee/customer/defaults.sh file. Il file contiene la seguente riga che mostra l'indirizzo email dell'amministratore di sistema predefinito corrente:

ADMIN_EMAIL=foo@bar.com

Per modificare l'amministratore di sistema predefinito in modo che sia un utente diverso:

  1. Crea un nuovo amministratore di sistema come descritto sopra o assicurati che l'account utente di il nuovo amministratore di sistema sia già configurato come amministratore di sistema.
  2. Modifica /opt/apigee/customer/defaults.sh per impostare ADMIN_EMAIL sull'indirizzo email del nuovo amministratore di sistema.
  3. Modifica il file di configurazione silenziosa che hai utilizzato per installare la nuova UI di Edge per impostare le seguenti proprietà:
    ADMIN_EMAIL=NEW_SYS_ADMIN_EMAIL
    APIGEE_ADMINPW=NEW_SYS_ADMIN_PASSWORD
    SMTPHOST=smtp.gmail.com
    SMTPPORT=465
    SMTPUSER=foo@gmail.com
    SMTPPASSWORD=bar
    SMTPSSL=y

    Tieni presente che devi includere le proprietà SMTP perché tutte le proprietà della nuova UI di Edge vengono reimpostate.

  4. Riconfigura la nuova UI di Edge:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui stop
    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui start

Se vuoi solo modificare l'indirizzo email dell'account utente per l'amministratore di sistema predefinito corrente, devi prima aggiornare l'account utente per impostare il nuovo indirizzo email, quindi modificare l'indirizzo email dell'amministratore di sistema predefinito:

  1. Aggiorna l'account utente dell'utente amministratore di sistema predefinito corrente con un nuovo indirizzo email address:
    curl -H content-type:application/json -X PUT -u CURRENT_SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
      http://ms_IP:8080/v1/users/CURRENT_SYS_ADMIN_EMAIL \
      -d '{"emailId": "NEW_SYS_ADMIN_EMAIL", "lastName": "admin", "firstName": "admin"}'
  2. Ripeti i passaggi 2, 3 e 4 della procedura precedente per aggiornare il /opt/apigee/customer/defaults.sh file e la nuova UI di Edge.

Specificare il dominio email di un amministratore di sistema

Come livello di sicurezza aggiuntivo, puoi specificare il dominio email richiesto di un amministratore di sistema Edge. Quando aggiungi un amministratore di sistema, se l'indirizzo email dell'utente non è nel dominio specificato, l'aggiunta dell'utente al ruolo "sysadmin" non riesce.

Per impostazione predefinita, il dominio richiesto è vuoto, il che significa che puoi aggiungere qualsiasi indirizzo email al "sysadmin" ruolo.

Per impostare il dominio email:

  1. Apri il file management-server.properties in un editor:
    vi /opt/apigee/customer/application/management-server.properties

    Se questo file non esiste, crealo.

  2. Imposta la proprietà conf_security_rbac.global.roles.allowed.domains sull'elenco di domini consentiti separati da virgole. Ad esempio:
    conf_security_rbac.global.roles.allowed.domains=myCo.com,yourCo.com
  3. Salva le modifiche.
  4. Riavvia il server di gestione Edge:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

    Se ora tenti di aggiungere un utente al ruolo "sysadmin" e l'indirizzo email dell'utente è in uno dei domini specificati, l'aggiunta non riesce.

Eliminare un utente

Puoi creare un utente utilizzando l'API Edge o la nuova UI di Edge. Tuttavia, puoi eliminare un utente solo utilizzando l'API.

Per visualizzare l'elenco degli utenti attuali, incluso l'indirizzo email, utilizza il seguente curl comando:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms-IP:8080/v1/users

Utilizza il seguente comando curl per eliminare un utente:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD -X DELETE http://ms_IP:8080/v1/users/USER_EMAIL