Réinitialisation des mots de passe périphériques

Edge for Private Cloud v. 4.17.05

Vous pouvez réinitialiser les mots de passe OpenLDAP, de l'administrateur système Apigee Edge, de l'utilisateur de l'organisation Edge et de Cassandra une fois l'installation terminée.

Réinitialiser le mot de passe OpenLDAP

Selon votre configuration Edge, OpenLDAP peut être installé en tant que :

  • Une seule instance d'OpenLDAP installée sur le nœud du serveur de gestion. Par exemple, dans une configuration Edge à 2, 5 ou 9 nœuds.
  • Plusieurs instances OpenLDAP installées sur les nœuds du serveur de gestion, configurées avec la réplication OpenLDAP. Par exemple, dans une configuration Edge à 12 nœuds.
  • Plusieurs instances OpenLDAP installées sur leurs propres nœuds, configurées avec la réplication OpenLDAP. Par exemple, dans une configuration Edge à 13 nœuds.

La manière dont vous réinitialisez le mot de passe OpenLDAP dépend de votre configuration.

Pour une seule instance d'OpenLDAP installée sur le serveur de gestion, procédez comme suit :

  1. Sur le nœud du serveur de gestion, exécutez la commande suivante pour créer le nouveau mot de passe OpenLDAP :
    > /opt/apigee/apigee-service/bin/apigee-service apigee-openldap change-ldap-password -o oldPword -n newPword
  2. Exécutez la commande suivante pour stocker le nouveau mot de passe pour l'accès par le serveur de gestion :
    > /opt/apigee/apigee-service/bin/apigee-service edge-management-server store_ldap_credentials -p newPword

    Cette commande redémarre le serveur de gestion.

Dans une configuration de réplication OpenLDAP avec OpenLDAP installé sur les nœuds du serveur de gestion, suivez les étapes ci-dessus sur les deux nœuds du serveur de gestion pour mettre à jour le mot de passe.

Dans une configuration de réplication OpenLDAP avec OpenLDAP sur un nœud autre que le serveur de gestion, veillez à modifier d'abord le mot de passe sur les deux nœuds OpenLDAP, puis sur les deux nœuds du serveur de gestion.

Réinitialiser le mot de passe de l'administrateur système

Pour réinitialiser le mot de passe de l'administrateur système, vous devez le réinitialiser à deux endroits :

  • Serveur de gestion
  • UI

Avertissement : Vous devez arrêter l'interface utilisateur Edge avant de réinitialiser le mot de passe de l'administrateur système. Étant donné que vous avez d'abord réinitialisé le mot de passe sur le serveur de gestion, il peut s'écouler un court laps de temps pendant lequel l'UI utilise toujours l'ancien mot de passe. Si l'UI effectue plus de trois appels à l'aide de l'ancien mot de passe, le serveur OpenLDAP verrouille le compte d'administrateur système pendant trois minutes.

Pour réinitialiser le mot de passe de l'administrateur système :

  1. Sur le nœud de l'UI, arrêtez l'UI Edge :
    > /opt/apigee/apigee-service/bin/apigee-service edge-ui stop
  2. Sur le serveur de gestion, exécutez la commande suivante pour réinitialiser le mot de passe :
    > /opt/apigee/apigee-service/bin/apigee-service edge-management-server change_sysadmin_password -o currentPW -n newPW
  3. Modifiez le fichier de configuration silencieux que vous avez utilisé pour installer l'interface utilisateur Edge afin de définir les propriétés suivantes :
    APIGEE_ADMINPW=newPW
    SMTPHOST=smtp.gmail.com
    SMTPPORT=465
    SMTPUSER=foo@gmail.com
    SMTPPASSWORD=bar
    SMTPSSL=y
    SMTPMAILFROM="My Company <myco@company.com>"


    Notez que vous devez inclure les propriétés SMTP lors de la transmission du nouveau mot de passe, car toutes les propriétés de l'interface utilisateur sont réinitialisées.
  4. Utilisez l'utilitaire apigee-setup pour réinitialiser le mot de passe de l'interface utilisateur Edge à partir du fichier de configuration :
    > /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
  5. (Uniquement si TLS est activé sur l'interface utilisateur) Réactivez TLS sur l'interface utilisateur Edge, comme décrit dans Configurer TLS pour l'interface utilisateur de gestion.

Dans un environnement de réplication OpenLDAP avec plusieurs serveurs de gestion, la réinitialisation du mot de passe sur un serveur de gestion met automatiquement à jour l'autre serveur de gestion. Cependant, vous devez mettre à jour tous les nœuds de l'UI Edge séparément.

Réinitialiser le mot de passe d'un utilisateur de l'organisation

Pour réinitialiser le mot de passe d'un utilisateur de l'organisation, utilisez l'utilitaire apigee-service pour appeler apigee-setup :

/opt/apigee/apigee-service/bin/apigee-service apigee-setup reset_user_password
 [-h] 
 [-u USER_EMAIL] 
 [-p USER_PWD]
 [-a ADMIN_EMAIL] 
 [-P APIGEE_ADMINPW] 
 [-f configFile]

Exemple :

> /opt/apigee/apigee-service/bin/apigee-service apigee-setup reset_user_password -u user@myCo.com -p foo12345 -a admin@myCo.com -P adminPword 

Vous trouverez ci-dessous un exemple de fichier de configuration que vous pouvez utiliser avec l'option "-f" :

USER_NAME= user@myCo.com
USER_PWD= "foo12345"
APIGEE_ADMINPW= adminPword

Vous pouvez également utiliser l'API Update user (Mettre à jour l'utilisateur) pour modifier le mot de passe de l'utilisateur.

Règles relatives aux mots de passe des administrateurs système et des utilisateurs de l'organisation

Utilisez cette section pour appliquer un niveau de longueur et de sécurité de mot de passe souhaité pour vos utilisateurs de l'API Management. Les paramètres utilisent une série d'expressions régulières préconfigurées (et numérotées de manière unique) pour vérifier le contenu du mot de passe (par exemple, majuscules, minuscules, chiffres et caractères spéciaux). Écrivez ces paramètres dans le fichier /opt/apigee/customer/application/management-server.properties. Si ce fichier n'existe pas, créez-le.

Après avoir modifié management-server.properties, redémarrez le serveur de gestion :

> /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

Vous pouvez ensuite définir des niveaux de sécurité des mots de passe en regroupant différentes combinaisons d'expressions régulières. Par exemple, vous pouvez déterminer qu'un mot de passe comportant au moins une lettre majuscule et une lettre minuscule obtient une note de force de "3", mais qu'un mot de passe comportant au moins une lettre minuscule et un chiffre obtient une note plus élevée de "4".

Propriétés

Description

conf_security_password.validation.minimum.
password.length=8

conf_security_password.validation.default.rating=2

conf_security_password.validation.minimum.
rating.required=3

Utilisez-les pour déterminer les caractéristiques globales des mots de passe valides. La note minimale par défaut pour le niveau de sécurité du mot de passe (décrit plus loin dans le tableau) est de 3.

Notez que la valeur password.validation.default.rating=2 est inférieure à la note minimale requise. Cela signifie que si un mot de passe saisi ne respecte pas les règles que vous configurez, il reçoit la note 2 et n'est donc pas valide (inférieur à la note minimale de 3).

Voici des expressions régulières qui identifient les caractéristiques des mots de passe. Notez que chacun d'eux est numéroté. Par exemple, "password.validation.regex.5=…" est l'expression numéro 5. Vous utiliserez ces chiffres dans une section ultérieure du fichier pour définir différentes combinaisons qui déterminent le niveau de sécurité global du mot de passe.

conf_security_password.validation.regex.1=^(.)\\1+$

1 – Tous les caractères se répètent

conf_security_password.validation.regex.2=^.*[a-z]+.*$

2 – Au moins une lettre minuscule

conf_security_password.validation.regex.3=^.*[A-Z]+.*$

3 – Au moins une lettre majuscule

conf_security_password.validation.regex.4=^.*[0-9]+.*$

4 – Au moins un chiffre

conf_security_password.validation.regex.5=^.*[^a-zA-z0-9]+.*$

5 – Au moins un caractère spécial (à l'exception du trait de soulignement _)

conf_security_password.validation.regex.6=^.*[_]+.*$

6 – Au moins un trait de soulignement

conf_security_password.validation.regex.7=^.*[a-z]{2,}.*$

7 – Plus d'une lettre minuscule

conf_security_password.validation.regex.8=^.*[A-Z]{2,}.*$

8 – Plus d'une lettre majuscule

conf_security_password.validation.regex.9=^.*[0-9]{2,}.*$

9 – Plusieurs chiffres

conf_security_password.validation.regex.10=^.*[^a-zA-z0-9]{2,}.*$

10 – Plus d'un caractère spécial (à l'exception du trait de soulignement)

conf_security_password.validation.regex.11=^.*[_]{2,}.*$

11 – Plus d'un trait de soulignement

Les règles suivantes déterminent le niveau de sécurité d'un mot de passe en fonction de son contenu. Chaque règle inclut une ou plusieurs expressions régulières de la section précédente et lui attribue une force numérique. La force numérique d'un mot de passe est comparée au nombre conf_security_password.validation.minimum.rating.required en haut de ce fichier pour déterminer si un mot de passe est valide ou non.

conf_security_password.validation.rule.1=1,AND,0

conf_security_password.validation.rule.2=2,3,4,AND,4

conf_security_password.validation.rule.3=2,9,AND,4

conf_security_password.validation.rule.4=3,9,AND,4

conf_security_password.validation.rule.5=5,6,OR,4

conf_security_password.validation.rule.6=3,2,AND,3

conf_security_password.validation.rule.7=2,9,AND,3

conf_security_password.validation.rule.8=3,9,AND,3

Chaque règle est numérotée. Par exemple, "password.validation.rule.3=…" correspond à la règle numéro 3.

Chaque règle utilise le format suivant (à droite du signe égal) :

<regex-index-list>,<AND|OR>,<rating>

regex-index-list est la liste des expressions régulières (par numéro de la section précédente), ainsi qu'un opérateur AND|OR (qui signifie que toutes les expressions listées ou l'une d'entre elles doivent être prises en compte).

rating est la note numérique attribuée à chaque règle.

Par exemple, la règle 5 signifie que tout mot de passe comportant au moins un caractère spécial OU un trait de soulignement obtient un niveau de sécurité de 4. Avec password.validation.minimum.
rating.required=3 en haut du fichier, un mot de passe avec une note de 4 est valide.

conf_security_rbac.password.validation.enabled=true

Définissez la validation du mot de passe du contrôle des accès basé sur les rôles sur "false" lorsque l'authentification unique (SSO) est activée. La valeur par défaut est "true".

Réinitialiser le mot de passe Cassandra

Par défaut, Cassandra est fourni avec l'authentification désactivée. Si vous activez l'authentification, elle utilise un utilisateur prédéfini nommé cassandra avec le mot de passe cassandra. Vous pouvez utiliser ce compte, définir un autre mot de passe pour ce compte ou créer un utilisateur Cassandra. Ajoutez, supprimez et modifiez des utilisateurs à l'aide des instructions Cassandra CREATE/ALTER/DROP USER.

Pour savoir comment activer l'authentification Cassandra, consultez Activer l'authentification Cassandra.

Pour réinitialiser le mot de passe Cassandra, procédez comme suit :

  • Définissez le mot de passe sur n'importe quel nœud Cassandra. Il sera diffusé sur tous les nœuds Cassandra de l'anneau.
  • Mettez à jour le serveur de gestion, les processeurs de messages, les routeurs, les serveurs Qpid, les serveurs Postgres et la pile BaaS sur chaque nœud avec le nouveau mot de passe.

Pour en savoir plus, consultez http://www.datastax.com/documentation/cql/3.0/cql/cql_reference/cqlCommandsTOC.html.

Pour réinitialiser le mot de passe Cassandra :

  1. Connectez-vous à n'importe quel nœud Cassandra à l'aide de l'outil cqlsh et des identifiants par défaut. Il vous suffit de modifier le mot de passe sur un nœud Cassandra pour qu'il soit diffusé sur tous les nœuds Cassandra de l'anneau :
    > /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra

    Où :
    • cassIP est l'adresse IP du nœud Cassandra.
    • 9042 est le port Cassandra.
    • L'utilisateur par défaut est cassandra.
    • Le mot de passe par défaut est cassandra. Si vous avez déjà modifié le mot de passe, utilisez le mot de passe actuel.
  2. Exécutez la commande suivante à l'invite cqlsh> pour mettre à jour le mot de passe :
    cqlsh> ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';

    Si le nouveau mot de passe contient un guillemet simple, échappez-le en le faisant précéder d'un guillemet simple.
  3. Quittez l'outil cqlsh :
    cqlsh> exit
  4. Sur le nœud du serveur de gestion, exécutez la commande suivante :
    > /opt/apigee/apigee-service/bin/apigee-service edge-management-server store_cassandra_credentials -u CASS_USERNAME -p CASS_PASSWORD

    Vous pouvez également transmettre un fichier à la commande contenant le nouveau nom d'utilisateur et le nouveau mot de passe :
    > apigee-service edge-management-server store_cassandra_credentials -f configFile

    Où configFile contient les éléments suivants :
    CASS_USERNAME=CASS_USERNAME
    CASS_PASSWORD=CASS_PASSWROD


    Cette commande redémarre automatiquement le serveur de gestion.
  5. Répétez l'étape 4 sur :
    • Tous les processeurs de messages
    • Tous les routeurs
    • Tous les serveurs Qpid (edge-qpid-server)
    • Serveurs Postgres (edge-postgres-server)
  6. Sur le nœud de la pile BaaS pour la version 4.16.05.04 et les versions ultérieures :
    1. Exécutez la commande suivante pour générer un mot de passe chiffré :
      > /opt/apigee/apigee-service/bin/apigee-service baas-usergrid secure_password

      Cette commande vous invite à saisir le mot de passe en texte brut et renvoie le mot de passe chiffré sous la forme :
      SECURE:ae1b6dedbf6b26aaab8bee815a910737c1c15b55f3505c239e43bc09f8050
    2. Définissez les jetons suivants dans /opt/apigee/customer/application/usergrid.properties. Si ce fichier n'existe pas, créez-le :
      usergrid-deployment_cassandra.username=cassandra
      usergrid-deployment_cassandra.password=SECURE:ae1b6dedbf6b26aaab8bee815a910737c1c15b55f3505c239e43bc09f8050


      Cet exemple utilise le nom d'utilisateur par défaut pour Cassandra. Si vous avez modifié le nom d'utilisateur, définissez la valeur de usergrid-deployment_cassandra.username en conséquence.

      Veillez à inclure le préfixe "SECURE:" dans le mot de passe. Sinon, la pile BaaS interprète la valeur comme non chiffrée.

      Remarque : Chaque nœud de la pile BaaS possède sa propre clé unique utilisée pour chiffrer le mot de passe. Par conséquent, vous devez générer la valeur chiffrée sur chaque nœud de la pile BaaS séparément.
    3. Remplacez le propriétaire du fichier usergrid.properties par l'utilisateur "apigee" :
      > chown apigee:apigee /opt/apigee/customer/application/usergrid.properties
    4. Configurez le nœud Stack :
      > /opt/apigee/apigee-service/bin/apigee-service baas-usergrid configure
    5. Redémarrez la pile BaaS :
      > /opt/apigee/apigee-service/bin/apigee-service baas-usergrid restart
    6. Répétez ces étapes pour tous les nœuds de la pile BaaS.

Le mot de passe Cassandra est maintenant modifié.

Réinitialisation du mot de passe PostgreSQL…

Par défaut, la base de données PostgreSQL comporte deux utilisateurs définis : "postgres" et "apigee". Le mot de passe par défaut de ces deux utilisateurs est "postgres". Pour modifier le mot de passe par défaut, procédez comme suit :

Modifiez le mot de passe sur tous les nœuds maîtres Postgres. Si vous avez configuré deux serveurs Postgres en mode maître/de secours, il vous suffit de modifier le mot de passe sur le nœud maître. Pour en savoir plus, consultez Configurer la réplication maître-serveur de secours pour Postgres.

  1. Sur le nœud Postgres maître, accédez au répertoire /opt/apigee/apigee-postgresql/pgsql/bin.
  2. Définissez le mot de passe de l'utilisateur PostgreSQL "postgres" :
    1. Connectez-vous à la base de données PostgreSQL à l'aide de la commande suivante :
      > psql -h localhost -d apigee -U postgres
    2. Lorsque vous y êtes invité, saisissez le mot de passe de l'utilisateur "postgres" en tant que "postgres".
    3. À l'invite de commande PostgreSQL, saisissez la commande suivante pour modifier le mot de passe par défaut :
      apigee=> ALTER USER postgres WITH PASSWORD 'apigee1234';
    4. Quittez la base de données PostgreSQL à l'aide de la commande suivante :
      apigee=> \q
  3. Définissez le mot de passe de l'utilisateur PostgreSQL "apigee" :
    1. Connectez-vous à la base de données PostgreSQL à l'aide de la commande suivante :
      > psql -h localhost -d apigee -U apigee
    2. Lorsque vous y êtes invité, saisissez le mot de passe de l'utilisateur "apigee" en tant que "postgres".
    3. À l'invite de commande PostgreSQL, saisissez la commande suivante pour modifier le mot de passe par défaut :
      apigee=> ALTER USER apigee WITH PASSWORD 'apigee1234';
    4. Quittez la base de données PostgreSQL à l'aide de la commande suivante :
      apigee=> \q
  4. Définissez APIGEE_HOME :
    > export APIGEE_HOME=/opt/apigee/edge-postgres-server
  5. Chiffrez le nouveau mot de passe :
    > sh /opt/apigee/edge-postgres-server/utils/scripts/utilities/passwordgen.sh apigee1234

    Cette commande renvoie le mot de passe chiffré, comme indiqué ci-dessous. Le mot de passe chiffré commence après le caractère ":" et n'inclut pas le ":".
    Chaîne chiffrée : WheaR8U4OeMEM11erxA3Cw==
  6. Mettez à jour le nœud du serveur de gestion avec les nouveaux mots de passe chiffrés pour les utilisateurs "postgres" et "apigee".
    1. Sur le serveur de gestion, accédez au répertoire /opt/apigee/customer/application.
    2. Modifiez le fichier management-server.properties pour définir les propriétés suivantes. Si ce fichier n'existe pas, créez-le :
      Remarque : Certaines propriétés utilisent le mot de passe chiffré de l'utilisateur "postgres", et d'autres utilisent le mot de passe chiffré de l'utilisateur "apigee".
      • conf_pg-agent_password=newEncryptedPasswordForPostgresUser
      • conf_pg-ingest_password=newEncryptedPasswordForPostgresUser
      • conf_query-service_pgDefaultPwd=newEncryptedPasswordForApigeeUser
      • conf_query-service_dwDefaultPwd=newEncryptedPasswordForApigeeUser
      • conf_analytics_aries.pg.password=newEncryptedPasswordForPostgresUser
    3. Assurez-vous que le fichier appartient à l'utilisateur "apigee" :
      > chown apigee:apigee management-server.properties
  7. Mettez à jour tous les nœuds du serveur Postgres et du serveur Qpid avec le nouveau mot de passe chiffré.
    1. Sur le nœud du serveur Postgres ou du serveur Qpid, accédez au répertoire /opt/apigee/customer/application.
    2. Modifiez les fichiers suivants. Si ces fichiers n'existent pas, créez-les :
      • postgres-server.properties
      • qpid-server.properties
    3. Ajoutez les propriétés suivantes aux fichiers :
      Remarque : Toutes ces propriétés utilisent le mot de passe chiffré de l'utilisateur "postgres".
      • conf_pg-agent_password=newEncryptedPasswordForPostgresUser
      • conf_pg-ingest_password=newEncryptedPasswordForPostgresUser
      • conf_query-service_pgDefaultPwd=newEncryptedPasswordForPostgresUser
      • conf_query-service_dwDefaultPwd=newEncryptedPasswordForPostgresUser
      • conf_analytics_aries.pg.password=newEncryptedPasswordForPostgresUser
    4. Assurez-vous que les fichiers appartiennent à l'utilisateur "apigee" :
      > chown apigee:apigee postgres-server.properties
      > chown apigee:apigee qpid-server.properties
  8. Redémarrez les composants suivants dans cet ordre :
    1. Base de données PostgreSQL :
      > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
    2. Serveur Qpid :
      > /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    3. Postgres Server :
      > /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart

    4. Serveur de gestion :> /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart