Gestione di utenti, ruoli e autorizzazioni

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

Per informazioni sugli utenti e sulla loro creazione, consulta:

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

Aggiunta di un utente

Puoi creare un utente utilizzando l'API Edge, la UI Edge o i comandi Edge. Questo che descrive l'utilizzo dell'API Edge e dei comandi Edge. Per informazioni sulla creazione di utenti nel UI Edge; consulta la sezione sulla creazione di un 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 comando seguente 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 mostrato nell'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 eseguire qualsiasi operazione, deve essere assegnato a un ruolo in un'organizzazione. Puoi assegnare all'utente diversi ruoli, tra cui orgadmin, businessuser, opsadmin, user o un ruolo personalizzato definito nell'organizzazione.

Quando viene assegnato un ruolo a un utente in un'organizzazione, l'utente viene automaticamente aggiunto al dell'organizzazione. Assegna un utente a più organizzazioni assegnandogli un ruolo in ciascuna.

Utilizza il comando seguente 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, 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'organizzazione dall'utente. 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

Aggiunta di un amministratore di sistema

Un amministratore di sistema può:

  • Crea organizzazioni
  • Aggiungere router, elaboratori di messaggi e altri componenti a un'installazione Edge
  • Configura TLS/SSL
  • Creare altri amministratori di sistema
  • Esegui tutte le attività amministrative di Edge

Sebbene sia un solo utente l'utente predefinito per le attività amministrative, può esserci più di un amministratore di sistema. Qualsiasi utente che fa parte del ruolo "sysadmin" ha autorizzazioni complete per tutte le risorse.

Puoi creare l'utente per l'amministratore di sistema nell'interfaccia utente o nell'API di Edge. Tuttavia, devi utilizzare l'API Edge per assegnare all'utente il ruolo di "sysadmin". L'assegnazione di un utente al ruolo "sysadmin" non è possibile nell'interfaccia utente di Edge.

Per aggiungere un amministratore di sistema:

  1. Crea un utente nell'API o nell'interfaccia utente di Edge.
  2. Aggiungi utente a "sysadmin" ruolo:
    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 sia nel ruolo "sysadmin" ruolo:
    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 amministrativo predefinito del sistema

Al momento dell'installazione di Edge, devi specificare l'indirizzo email dell'amministratore di sistema. Dispositivi periferici crea un utente con quell'indirizzo email e lo imposta come sistema predefinito amministratore. In un secondo momento puoi aggiungere altri amministratori di sistema come descritto sopra.

Questa sezione descrive come cambiare l'amministratore di sistema predefinito in un utente diverso, e come modificare l'indirizzo email dell'account utente per l'attuale sistema predefinito amministratore.

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

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'attuale amministratore di sistema predefinito:

ADMIN_EMAIL=foo@bar.com

Per cambiare l'amministratore di sistema predefinito e impostarlo come utente diverso:

  1. Crea un nuovo amministratore di sistema come descritto sopra o assicurati che l'account utente del nuovo amministratore di sistema sia già configurato come tale.
  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 silenzioso utilizzato per installare l'interfaccia utente 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à dell'interfaccia utente vengono reimpostate.

  4. Riconfigura l'interfaccia utente di Edge:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui stop
    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui start

Se vuoi solo cambiare l'indirizzo email dell'account utente per l'attuale impostazione predefinita amministratore di sistema, aggiorni prima l'account utente per impostare il nuovo indirizzo email e poi l'indirizzo email predefinito dell'amministratore di sistema:

  1. Aggiorna l'account utente dell'attuale utente amministratore di sistema predefinito con un nuovo indirizzo email:
    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. Ripetere i punti 2, 3. e 4 della procedura precedente per aggiornare /opt/apigee/customer/defaults.sh e aggiornare la UI Edge.

Specificare il dominio email di un sistema amministratore

Come ulteriore livello di sicurezza, puoi specificare il dominio email richiesto di un sistema periferico amministratore. Quando aggiungi un amministratore di sistema, se l'indirizzo email dell'utente non è nel dominio specificato, aggiungendo l'utente a "sysadmin" non riesce.

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

Per impostare il dominio email:

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

    Se il file non esiste, crealo.

  2. Imposta conf_security_rbac.global.roles.allowed.domains all'elenco separato da virgole dei domini consentiti. Ad esempio:
    conf_security_rbac.global.roles.allowed.domains=myCo.com,yourCo.com
  3. Salva le modifiche.
  4. Riavviare Edge Management Server:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

    Se ora provi ad aggiungere un utente al ruolo "sysadmin" e l'indirizzo email dell'utente non si trova in uno dei domini specificati, l'aggiunta non va a buon fine.

Eliminazione di un utente

Puoi creare un utente utilizzando l'API Edge o la UI 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

Usa 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