Administración de usuarios, roles y permisos

Edge para nube privada v. 4.17.05

El sitio de documentación de Apigee contiene mucha información sobre la administración de roles y permisos de usuarios. Los usuarios se pueden administrar mediante la IU de Edge y la API de Management. Las funciones y los permisos solo se pueden administrar con la API de Management.

Para obtener información sobre los usuarios y cómo crear usuarios, consulta lo siguiente:

Muchas de las operaciones que realizas para administrar usuarios requieren privilegios de administrador del sistema. En una instalación de Edge basada en la nube, Apigee funciona en el rol de administrador del sistema. En una instalación de Edge para la nube privada, el administrador del sistema debe realizar estas tareas como se describe a continuación.

Agrega un usuario

Puedes crear un usuario mediante la API de Edge, la IU de Edge o los comandos de Edge. En esta sección, se describe cómo usar la API de Edge y los comandos de Edge. Para obtener información sobre cómo crear usuarios en la IU de Edge, consulta Crea usuarios globales.

Después de crear el usuario en una organización, debes asignarle un rol. Las funciones determinan los derechos de acceso del usuario en Edge.

Usa el siguiente comando para crear un usuario con la API de Edge:

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

También puedes usar el siguiente comando de Edge para crear un usuario:

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

Donde el configFile contiene la información necesaria para crear el usuario:

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

Luego, puedes usar esta llamada para ver información sobre el usuario:

curl -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/users/foo@bar.com

Asignar al usuario a un rol en una organización

Antes de que un usuario nuevo pueda realizar cualquier acción, se le debe asignar un rol en una organización. Puedes asignar diferentes roles al usuario, por ejemplo: orgadmin, businessuser, opsadmin, user o a un rol personalizado definido en la organización.

Cuando se asigna un usuario a un rol en una organización, se agrega automáticamente a ese usuario a la organización. Puedes asignar un usuario a varias organizaciones mediante un rol en cada una de ellas.

Usa el siguiente comando para asignar al usuario un rol en una organización:

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 <sysAdminEmail>:<passwd> 

En esta llamada, se muestran todos los roles asignados al usuario. Si deseas agregar el usuario y mostrar solo la función nueva, usa la siguiente llamada:

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 <sysAdminEmail>:<passwd>

Puedes ver los roles del usuario con el siguiente comando:

curl -u <sysAdminEmail>:<passwd> /
http://<ms_IP>:8080/v1/users/foo@bar.com/userroles

Para quitar a un usuario de una organización, quítale todos los roles de esa organización. Usa el siguiente comando para quitarle un rol a un usuario:

curl -X DELETE -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/o/<org_name>/userroles/<role>/users/foo@bar.com

Agrega un administrador del sistema

Un administrador del sistema puede hacer lo siguiente:

  • Crear organizaciones
  • Cómo agregar routers, procesadores de mensajes y otros componentes a una instalación de Edge
  • Configurar TLS/SSL
  • Cómo crear administradores del sistema adicionales
  • Realiza todas las tareas administrativas de Edge

Si bien solo un usuario es el usuario predeterminado para las tareas administrativas, puede haber más de un administrador del sistema. Cualquier usuario que sea miembro de la función sysadmin tiene permisos completos para todos los recursos.

Puedes crear el usuario para el administrador del sistema en la API o la IU de Edge. Sin embargo, debes usar la API de Edge para asignar al usuario la función de sysadmin. La asignación de un usuario a la función sysadmin no se puede realizar en la IU de Edge.

Para agregar un administrador del sistema, haz lo siguiente:

  1. Crea un usuario en la API o la IU de Edge.
  2. Agrega un usuario a la función sysadmin:
    curl -u <sysAdminEmail>:<passwd> \
    -X POST http://<ms_IP>:8080/v1/userroles/sysadmin/users \
    -d 'id=foo@bar.com'
  3. Asegúrate de que el usuario nuevo tenga el rol de administrador del sistema:
    curl -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/userroles/sysadmin/users

    Muestra la dirección de correo electrónico del usuario:
    [ " foo@bar.com " ]
  4. Verifica los permisos del usuario nuevo:
    curl -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/users/foo@bar.com/permissions

    Muestra:
    {
    "resourcePermission" : [ {
    "path" : "/",
    "permissions" : [ "delete", "permissions"

  5. Después de agregar al nuevo administrador del sistema, podrás agregar al usuario a cualquier organización.
    Nota: El nuevo usuario administrador del sistema no podrá acceder a la IU de Edge hasta que lo agregues a al menos una organización.
  6. Si luego quieres quitar al usuario de la función de administrador del sistema, puedes usar la siguiente API:
    curl -X DELETE -u <sysadminEmail:pword>
    http://<ms_IP>:8080/v1/userroles/sysadmin/users/foo@bar.com


    Ten en cuenta que esta llamada solo quita al usuario del rol.

Cambia el usuario administrador del sistema predeterminado

Cuando instalas Edge, debes especificar la dirección de correo electrónico del administrador del sistema. Edge crea un usuario con esa dirección de correo electrónico y lo establece como administrador del sistema predeterminado. Luego, puedes agregar administradores del sistema adicionales como se describió anteriormente.

En esta sección, se describe cómo cambiar el administrador del sistema predeterminado para que sea un usuario diferente y cómo cambiar la dirección de correo electrónico de la cuenta de usuario para el administrador del sistema predeterminado actual.

Para ver la lista de usuarios configurados actualmente como administradores del sistema, usa la siguiente llamada a la API:

curl -u sysAdminEmail:passwd http://<ms_IP>:8080/v1/userroles/sysadmin/users

Para determinar el administrador del sistema predeterminado actual, consulte el archivo /opt/apigee/customer/defaults.sh. El archivo contiene la siguiente línea que muestra la dirección de correo electrónico del administrador del sistema predeterminado actual:

ADMIN_EMAIL=foo@bar.com

Para cambiar el administrador del sistema predeterminado y usar otro usuario, haz lo siguiente:

  1. Crea un nuevo administrador del sistema como se describió anteriormente o asegúrate de que la cuenta de usuario del nuevo administrador del sistema ya esté configurada como administrador del sistema.
  2. Edita /opt/apigee/customer/defaults.sh para configurar ADMIN_EMAIL en la dirección de correo electrónico del administrador del sistema nuevo.
  3. Edita el archivo de configuración silencioso que usaste para instalar la IU de Edge a fin de establecer las siguientes propiedades:
    ADMIN_EMAIL=emailAddressOfNewSysAdmin
    APIGEE_ADMINPW=pwOfNewSysAdmin

    SMTPHOST=smtp.gmail.com
    Las propiedades SMTP

    SMTPUSER restablecidas con la IU=465
    Nota: Las propiedades SMTP

  4. Reconfigura la IU de 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 perimetral-ui start

Si solo deseas cambiar la dirección de correo electrónico de la cuenta de usuario del administrador del sistema predeterminado actual, primero debes actualizar la cuenta de usuario para establecer la nueva dirección de correo electrónico y, luego, cambiar la dirección de correo electrónico predeterminada del administrador del sistema:

  1. Actualiza la cuenta del usuario actual del administrador del sistema predeterminado con una dirección de correo electrónico nueva:
    > curl -H content-type:application/json -X PUT /
    -u currentSysAdminEmail:passwd /
    http://<ms_IP>:8080/v1/users/currentSysAdminEmail" /
  2. Repite los pasos 2, 3 y 4 del procedimiento anterior para actualizar el archivo /opt/apigee/customer/defaults.sh y la IU de Edge.

Especificación del dominio de correo electrónico de un administrador del sistema

Como nivel adicional de seguridad, puedes especificar el dominio de correo electrónico requerido de un administrador del sistema Edge. Cuando se agrega un administrador del sistema, si la dirección de correo electrónico del usuario no está en el dominio especificado, falla el proceso de agregar el usuario a la función sysadmin.

De forma predeterminada, el dominio requerido está vacío, lo que significa que puedes agregar cualquier dirección de correo electrónico a la función sysadmin.

Para configurar el dominio del correo electrónico, haz lo siguiente:

  1. Abre en un editor management-server.properties:
    vi /opt/apigee/customer/application/management-server.properties

    Si este archivo no existe, créalo.
  2. Configura la propiedad conf_security_rbac.global.roles.allowed.domains con la lista de dominios permitidos separados por comas. Por ejemplo:
    conf_security_rbac.global.roles.allowed.domains=myCo.com,yourCo.com
  3. Guarda los cambios.
  4. Reinicia el servidor de administración perimetral:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

    Si ahora intentas agregar un usuario a la función de sysadmin y la dirección de correo electrónico del usuario no está en uno de los dominios especificados, la adición falla.

Borra un usuario

Puedes crear un usuario mediante la API de Edge o la IU de Edge. Sin embargo, solo puedes borrar usuarios con la API.

Para ver la lista de usuarios actuales, incluida la dirección de correo electrónico, usa el siguiente comando cURL:

curl -u <sysAdminEmail>:<passwd> http://<ms-IP>:8080/v1/users

Usa el siguiente comando de cURL para borrar un usuario:

curl -u <sysAdminEmail>:<passwd> -X DELETE http://<ms-IP>:8080/v1/users/<userEmail>