Gérer les utilisateurs, les rôles et les autorisations

Le site de documentation Apigee contient de nombreuses informations sur la gestion des rôles et des autorisations des utilisateurs. Les utilisateurs peuvent être gérés à l'aide de la nouvelle interface utilisateur Edge et de l'API Management. Les rôles et les autorisations ne peuvent être gérés qu'avec l'API Management.

Pour en savoir plus sur les utilisateurs et leur création, consultez les ressources suivantes :

La plupart des opérations que vous effectuez pour gérer les utilisateurs nécessitent des droits d'administrateur système. Dans une installation Edge basée sur le cloud, Apigee fonctionne en tant qu'administrateur système. Dans une installation Edge for Private Cloud, votre administrateur système doit effectuer ces tâches comme décrit ci-dessous.

Ajouter un utilisateur

Vous pouvez créer un utilisateur à l'aide de l'API Edge, de la nouvelle interface utilisateur Edge ou des commandes Edge. Cette section explique comment utiliser l'API Edge et les commandes Edge. Pour savoir comment créer des utilisateurs dans la nouvelle interface utilisateur Edge, consultez la section Créer des utilisateurs globaux.

Une fois que vous avez créé l'utilisateur dans une organisation, vous devez lui attribuer un rôle. Les rôles déterminent les droits d'accès de l'utilisateur sur Edge.

Utilisez la commande suivante pour créer un utilisateur avec 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>'

Vous pouvez également utiliser la commande Edge suivante pour créer un utilisateur :

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

Où configFile crée l'utilisateur, comme le montre l'exemple suivant :

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

Vous pouvez ensuite utiliser cet appel pour afficher des informations sur l'utilisateur :

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

Attribuer l'utilisateur à un rôle dans une organisation

Avant qu'un nouvel utilisateur puisse faire quoi que ce soit, il doit être attribué à un rôle dans une organisation. Vous pouvez attribuer l'utilisateur à différents rôles, y compris : orgadmin, businessuser, opsadmin, user, ou à un rôle personnalisé défini dans l'organisation.

L'attribution d'un utilisateur à un rôle dans une organisation l'ajoute automatiquement à l' organisation. Attribuez un utilisateur à plusieurs organisations en l'attribuant à un rôle dans chaque organisation.

Utilisez la commande suivante pour attribuer l'utilisateur à un rôle dans une organisation :

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

Cet appel affiche tous les rôles attribués à l'utilisateur. Si vous souhaitez ajouter l'utilisateur, mais n'afficher que le nouveau rôle, utilisez l'appel suivant :

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

Vous pouvez afficher les rôles de l'utilisateur à l'aide de la commande suivante :

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

Pour supprimer un utilisateur d'une organisation, supprimez tous les rôles de cette organisation de l'utilisateur. Utilisez la commande suivante pour supprimer un rôle d'un utilisateur :

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

Ajouter un administrateur système

Un administrateur système peut :

  • créer des organisations ;
  • ajouter des routeurs, des processeurs de messages et d'autres composants à une installation Edge ;
  • configurer TLS/SSL ;
  • créer des administrateurs système supplémentaires ;
  • effectuer toutes les tâches d'administration Edge.

Bien qu'un seul utilisateur soit l'utilisateur par défaut pour les tâches d'administration, il peut y avoir plus d'un administrateur système. Tout utilisateur membre du rôle "sysadmin" dispose d'autorisations complètes sur toutes les ressources.

Vous pouvez créer l'utilisateur pour l'administrateur système dans la nouvelle interface utilisateur Edge ou l'API. Toutefois, vous devez utiliser l'API Edge pour attribuer l'utilisateur au rôle "sysadmin". L'attribution d'un utilisateur au rôle "sysadmin" ne peut pas être effectuée dans la nouvelle interface utilisateur Edge.

Pour ajouter un administrateur système :

  1. Créez un utilisateur dans la nouvelle interface utilisateur Edge ou l'API.
  2. Ajoutez l'utilisateur au rôle "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. Assurez-vous que le nouvel utilisateur dispose du rôle "sysadmin" :
    curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users

    Renvoie l'adresse e-mail de l'utilisateur :

    [ " foo@bar.com " ]
  4. Vérifiez les autorisations du nouvel utilisateur :
    curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/permissions

    Renvoie :

    {
      "resourcePermission" : [ {
      "path" : "/",
        "permissions" : [ "get", "put", "delete" ]
      } ]
    }
  5. Une fois que vous avez ajouté le nouvel administrateur système, vous pouvez ajouter l'utilisateur à n'importe quelle organisation.
  6. Si vous souhaitez supprimer l'utilisateur du rôle d'administrateur système, vous pouvez utiliser l' API suivante :
    curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
      http://ms_IP:8080/v1/userroles/sysadmin/users/foo@bar.com

    Notez que cet appel ne supprime l'utilisateur que du rôle, et non l'utilisateur lui-même.

Modifier l'utilisateur administrateur système par défaut

Lorsque vous installez Edge, vous spécifiez l'adresse e-mail de l'administrateur système. Edge crée un utilisateur avec cette adresse e-mail et le définit comme administrateur système par défaut. Vous pouvez ensuite ajouter d'autres administrateurs système comme décrit ci-dessus.

Cette section explique comment modifier l'administrateur système par défaut pour qu'il s'agisse d'un autre utilisateur, et comment modifier l'adresse e-mail du compte utilisateur de l'administrateur système par défaut actuel.

Pour afficher la liste des utilisateurs actuellement configurés en tant qu'administrateurs système, utilisez l'appel d'API suivant :

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

Pour déterminer l'administrateur système par défaut actuel, consultez le /opt/apigee/customer/defaults.sh fichier. Le fichier contient la ligne suivante indiquant l'adresse e-mail de l'administrateur système par défaut actuel :

ADMIN_EMAIL=foo@bar.com

Pour modifier l'administrateur système par défaut afin qu'il s'agisse d'un autre utilisateur :

  1. Créez un administrateur système comme décrit ci-dessus ou assurez-vous que le compte utilisateur de le nouvel administrateur système est déjà configuré en tant qu'administrateur système.
  2. Modifiez /opt/apigee/customer/defaults.sh pour définir ADMIN_EMAIL sur l'adresse e-mail du nouvel administrateur système.
  3. Modifiez le fichier de configuration silencieuse que vous avez utilisé pour installer la nouvelle interface utilisateur Edge afin de définir les propriétés suivantes :
    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

    Notez que vous devez inclure les propriétés SMTP, car toutes les propriétés de la nouvelle interface utilisateur Edge sont réinitialisées.

  4. Reconfigurez la nouvelle interface utilisateur 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 vous souhaitez simplement modifier l'adresse e-mail du compte utilisateur de l'administrateur système par défaut actuel, vous devez d'abord mettre à jour le compte utilisateur pour définir la nouvelle adresse e-mail, puis modifier l'adresse e-mail de l'administrateur système par défaut :

  1. Mettez à jour le compte utilisateur de l'administrateur système par défaut actuel avec une nouvelle adresse e-mail :
    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. Répétez les étapes 2, 3 et 4 de la procédure précédente pour mettre à jour le /opt/apigee/customer/defaults.sh fichier et la nouvelle interface utilisateur Edge.

Spécifier le domaine de messagerie d'un administrateur système

Pour renforcer la sécurité, vous pouvez spécifier le domaine de messagerie requis d'un administrateur système Edge. Lorsque vous ajoutez un administrateur système, si l'adresse e-mail de l'utilisateur ne se trouve pas dans le domaine spécifié, l'ajout de l'utilisateur au rôle "sysadmin" échoue.

Par défaut, le domaine requis est vide, ce qui signifie que vous pouvez ajouter n'importe quelle adresse e-mail au "sysadmin" rôle.

Pour définir le domaine de messagerie :

  1. Ouvrez le fichier management-server.properties dans un éditeur :
    vi /opt/apigee/customer/application/management-server.properties

    Si ce fichier n'existe pas, créez-le.

  2. Définissez la propriété conf_security_rbac.global.roles.allowed.domains sur la liste de domaines autorisés séparés par une virgule. Exemple :
    conf_security_rbac.global.roles.allowed.domains=myCo.com,yourCo.com
  3. Enregistrez les modifications.
  4. Redémarrez le serveur de gestion Edge :
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

    Si vous tentez d'ajouter un utilisateur au rôle "sysadmin" et que son adresse e-mail ne figure pas dans l'un des domaines spécifiés, l'ajout échoue.

Supprimer un compte utilisateur

Vous pouvez créer un utilisateur à l'aide de l'API Edge ou de la nouvelle interface utilisateur Edge. Toutefois, vous ne pouvez supprimer un utilisateur qu'à l'aide de l'API.

Pour afficher la liste des utilisateurs actuels, y compris leur adresse e-mail, utilisez la curl commande suivante :

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

Utilisez la commande curl suivante pour supprimer un utilisateur :

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