El sitio de documentación de Apigee tiene información detallada sobre la administración de roles y permisos de usuarios. Los usuarios se pueden administrar con la IU de New Edge y la API de Management. Los roles y los permisos solo se pueden administrar con la API de Management.
Para obtener información sobre los usuarios y cómo crearlos, 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 como administrador del sistema. En una instalación de Edge para la nube privada, tu administrador del sistema debe realizar estas tareas como se describe a continuación.
Cómo agregar un usuario
Puedes crear un usuario con la API de Edge, la IU de New 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 New Edge, consulta Cómo crear usuarios globales.
Después de crear el usuario en una organización, debes asignarle un rol. Los roles 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 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>'O usa el siguiente comando de Edge para crear un usuario:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-user -f configFile
Donde configFile crea el usuario, como se muestra en el siguiente ejemplo:
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
Luego, puedes usar esta llamada para ver información sobre el usuario:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com
Cómo asignar el usuario a un rol en una organización
Antes de que un usuario nuevo pueda hacer algo, debe asignarse a un rol en una organización. Puedes asignar el usuario a diferentes roles, incluidos: orgadmin, businessuser, opsadmin, user, o a un rol personalizado definido en la organización.
Si asignas un usuario a un rol en una organización, se agrega automáticamente ese usuario a la organización. Para asignar un usuario a varias organizaciones, asígnale un rol en cada organización.
Usa el siguiente comando para asignar el usuario a 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 SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD
Esta llamada muestra todos los roles asignados al usuario. Si deseas agregar el usuario, pero mostrar solo el rol nuevo, 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 SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD
Puedes ver los roles del usuario con el siguiente comando:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/userroles
Para quitar un usuario de una organización, quita todos los roles de esa organización del usuario. Usa el siguiente comando para quitar un rol de un usuario:
curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ http://ms_IP:8080/v1/o/org_name/userroles/role/users/foo@bar.com
Cómo agregar un administrador del sistema
Un administrador del sistema puede hacer lo siguiente:
- Crear organizaciones
- Agregar routers, procesadores de mensajes y otros componentes a una instalación de Edge
- Configurar TLS/SSL
- Crear administradores del sistema adicionales
- Realizar 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 del rol "sysadmin" tiene permisos completos para todos los recursos.
Puedes crear el usuario para el administrador del sistema en la IU de New Edge o en la API. Sin embargo, debes usar la API de Edge para asignar el usuario al rol de "sysadmin". La asignación de un usuario al rol "sysadmin" no se puede realizar en la IU de New Edge.
Para agregar un administrador del sistema, haz lo siguiente:
- Crea un usuario en la IU de New Edge o en la API.
- Agrega el usuario al rol "sysadmin":
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ -X POST http://ms_IP:8080/v1/userroles/sysadmin/users -d 'id=foo@bar.com'
- Asegúrate de que el usuario nuevo esté en el rol "sysadmin":
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users
Muestra la dirección de correo electrónico del usuario:
[ " foo@bar.com " ]
- Verifica los permisos del usuario nuevo:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/permissions
Se muestra lo siguiente:
{ "resourcePermission" : [ { "path" : "/", "permissions" : [ "get", "put", "delete" ] } ] } - Después de agregar el nuevo administrador del sistema, puedes agregar el usuario a cualquier organización.
- Si más adelante deseas quitar el usuario del rol de administrador del sistema, puedes usar la
siguiente API:
curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ http://ms_IP:8080/v1/userroles/sysadmin/users/foo@bar.com
Ten en cuenta que esta llamada solo quita el usuario del rol, no lo borra.
Cómo cambiar el usuario administrador del sistema predeterminado
Cuando instalas Edge, especificas 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 el administrador del sistema predeterminado. Más adelante, 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 del 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 SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users
Para determinar el administrador del sistema predeterminado actual, consulta el
/opt/apigee/customer/defaults.sh archivo. 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 para que sea un usuario diferente, haz lo siguiente:
- Crea un administrador del sistema nuevo como se describió anteriormente o asegúrate de que la cuenta de usuario de el nuevo administrador del sistema ya esté configurada como administrador del sistema.
- Edita
/opt/apigee/customer/defaults.shpara establecerADMIN_EMAILen la dirección de correo electrónico del nuevo administrador del sistema. - Edita el archivo de configuración silenciosa que usaste para instalar la IU de New Edge para establecer las siguientes
propiedades:
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
Ten en cuenta que debes incluir las propiedades de SMTP porque se restablecen todas las propiedades en la IU de New Edge.
- Vuelve a configurar la IU de New 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
Si solo deseas cambiar la dirección de correo electrónico de la cuenta de usuario del administrador del sistema predeterminado actual , primero actualiza la cuenta de usuario para establecer la nueva dirección de correo electrónico y, luego, cambia la dirección de correo electrónico del administrador del sistema predeterminado:
- Actualiza la cuenta de usuario del administrador del sistema predeterminado actual con una dirección de correo electrónico nueva:
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"}' - Repite los pasos 2, 3 y 4 del procedimiento anterior para actualizar el
/opt/apigee/customer/defaults.sharchivo y la IU de New Edge.
Cómo especificar el dominio de correo electrónico de un administrador del sistema
Como nivel de seguridad adicional, puedes especificar el dominio de correo electrónico requerido de un administrador del sistema de Edge. Cuando agregas un administrador del sistema, si la dirección de correo electrónico del usuario no está en el dominio especificado, no se podrá agregar el usuario al rol "sysadmin".
De forma predeterminada, el dominio requerido está vacío, lo que significa que puedes agregar cualquier dirección de correo electrónico al "sysadmin" rol.
Para establecer el dominio de correo electrónico, haz lo siguiente:
- Abre el archivo
management-server.propertiesen un editor:vi /opt/apigee/customer/application/management-server.properties
Si este archivo no existe, créalo.
- Establece la propiedad
conf_security_rbac.global.roles.allowed.domainsen la lista separada por comas de los dominios permitidos. Por ejemplo:conf_security_rbac.global.roles.allowed.domains=myCo.com,yourCo.com
- Guarda los cambios.
- Reinicia el servidor de administración de Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Si ahora intentas agregar un usuario al rol "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 con la API de Edge o la IU de New Edge. Sin embargo, solo puedes borrar un usuario con la API.
Para ver la lista de usuarios actuales, incluida la dirección de correo electrónico, usa el siguiente
curl comando:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms-IP:8080/v1/users
Usa el siguiente comando curl para borrar un usuario:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD -X DELETE http://ms_IP:8080/v1/users/USER_EMAIL