Activer l'authentification Cassandra

Par défaut, Cassandra installe l'application sans authentification activée. Cela signifie que toute personne ayant accès à votre serveur Cassandra peuvent interroger la base de données Cassandra sans aucune authentification. Vous pouvez activer l'authentification après l'installation de Edge ou dans le cadre du processus d'installation.

Si vous décidez d'activer l'authentification dans Cassandra sans fournir d'identifiants de connexion lui-même, il utilise les identifiants par défaut suivants:

  • username = "cassandra"
  • password = "cassandra"

Vous pouvez utiliser ce compte utilisateur, définir un mot de passe différent pour ce compte utilisateur ou créer un utilisateur Cassandra. Ajouter, supprimer et modifier des utilisateurs à l'aide de Cassandra Instructions CREATE/ALTER/DROP USER.

Pour en savoir plus, consultez la page Commandes shell SQL Cassandra.

Activer l'authentification Cassandra pendant installation

Vous pouvez activer l'authentification Cassandra au moment de l'installation. Toutefois, même si vous pouvez activer authentification lorsque vous installez Cassandra, vous devez toujours utiliser le nom d'utilisateur cassandra par défaut et le mot de passe (‘cassandra’:’cassandra’) pendant l'installation. Si vous souhaitez utiliser des identifiants Cassandra autres que ceux par défaut, vous devez le réactiver. l'authentification après l'installation en suivant la procédure <ph type="x-smartling-placeholder"></ph> en cliquant ici.

Si vous souhaitez activer l'authentification Cassandra lors d'une nouvelle installation de Cassandra, incluez les propriétés ci-dessous dans le fichier de configuration pour tous les nœuds Cassandra:

CASS_AUTH=y
CASS_USERNAME=cassandra
CASS_PASSWORD=cassandra

L'installation configurera ensuite Cassandra avec l'authentification activée et avec les paramètres Identifiants cassandra:cassandra.

Une fois l'installation initiale terminée, vous pouvez suivre une ou plusieurs des étapes suivantes:

  • Créez un autre utilisateur à utiliser pour l'authentification Cassandra en suivant la procédure <ph type="x-smartling-placeholder"></ph> en cliquant ici.
  • Modifiez le mot de passe de l'utilisateur Cassandra par défaut en suivant la procédure ci-dessous. cliquez ici.
  • Installer les composants Edge qui utilisent Cassandra pour utiliser les identifiants définis ci-dessus.

Composants de périphérie qui se connectent à Cassandra

Les composants Edge suivants accèdent à Cassandra:

  • Serveur de gestion
  • Processeurs de messages
  • Routeurs
  • Serveurs Qpid
  • Serveurs Postgres

Installer les composants Edge lorsque l'authentification Cassandra est activée

Si l'authentification Cassandra est activée lorsque vous installez ces composants Edge pour le la première fois, vous devez fournir les paramètres suivants dans le fichier de configuration silencieuse:

CASS_AUTH=Y
CASS_USERNAME=<valid username in Cassandra>
CASS_PASSWORD=<password for the above username>

Vous pouvez modifier le fichier Cassandra après l'installation de Cassandra. Toutefois, si vous qui ont déjà installé le serveur de gestion, les processeurs de messages, les routeurs, ou des serveurs Postgres, vous devez également Mettez à jour ces composants pour qu'ils utilisent de nouveaux identifiants, comme décrit dans la section suivante.

Mettre à jour les composants Edge qui se connectent à Cassandra

Procédez comme suit pour mettre à jour tous les composants Edge qui communiquent avec Cassandra avec les nouveaux identifiants. Notez que vous devez effectuer cette étape avant de mettre à jour Cassandra. identifiants:

  1. 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 cassandra_username -p cassandra_password

    Vous pouvez également transmettre un fichier contenant le nouveau nom d'utilisateur et le nouveau mot de passe à la commande:

    apigee-service edge-management-server store_cassandra_credentials  -f configFile

    configFile contient les éléments suivants:

    CASS_USERNAME=cassandra_username # Default is cassandra
    CASS_PASSWORD='cassandra_password' # Default is cassandra; wrap in single quotes if it includes special characters.

    Cette commande redémarre automatiquement le serveur de gestion.

  2. Répétez l'étape 1 pour chacun des services suivants: <ph type="x-smartling-placeholder">
      </ph>
    • Tous les processeurs de messages
    • Tous les routeurs
    • Tous les serveurs Qpid (edge-qpid-server)
    • Serveurs Postgres (edge-postgres-server)

    Lorsque vous répétez l'étape 1 pour chaque service, remplacez edge-management-server. dans la commande ci-dessus par le nom de service approprié. Par exemple, lorsque vous exécutez l'étape pour un service de routeur, utilisez la commande suivante:

    /opt/apigee/apigee-service/bin/apigee-service edge-router store_cassandra_credentials -u cassandra -p cassandra

    Activer l'authentification Cassandra après l'installation

    Les sections suivantes expliquent comment activer l'authentification Cassandra après l'installation.

    Activer l'authentification Cassandra sur une seule configuration de centre de données

    Pour une configuration Apigee unique basée sur un centre de données et sur laquelle Cassandra est déjà installé, vous pouvez:

    Remarque : "Cassandra" utilisateur est un utilisateur spécial dans Cassandra. S'authentifier à l'aide de ce l'utilisateur a besoin d'une cohérence QUORUM. Voir <ph type="x-smartling-placeholder"></ph> À propos des niveaux de cohérence Cassandra

    Activer l'authentification Cassandra lorsqu'il existe plusieurs centres de données

    Lorsque vous agrandissez un centre de données, suivez les étapes de l'un des scénarios suivants : en fonction de votre configuration.

    Scénario 1: l'authentification Cassandra est activée dans un centre de données existant

    Si l'authentification Cassandra est déjà activée dans un centre de données existant par défaut cassandra:cassandra, procédez comme suit:

    1. Configurer un nouveau centre de données avec les identifiants Cassandra:Cassandra par défaut et CASS_AUTH=y. Voir Activer l'authentification Cassandra pour la première fois.
    2. Installer Edge dans le nouveau centre de données à l'aide des identifiants Cassandra par défaut.

    Si l'authentification Cassandra est déjà activée dans le centre de données existant avec des identifiants autres que ceux par défaut, procédez comme suit:

    1. Configurer un nouveau centre de données avec des identifiants Cassandra:Cassandra par défaut CASS_AUTH=y. Voir Activer l'authentification Cassandra pour la première fois.
    2. Suivez les instructions. Activez l'authentification Cassandra pour la première fois pour réutiliser les identifiants un centre de données existant (si celui-ci utilise un identifiant autre que celui par défaut).
    3. Installer Edge dans le nouveau centre de données à l'aide d'identifiants Cassandra autres que ceux par défaut.

    Scénario 2: l'authentification Cassandra n'est pas activée dans un centre de données existant

    Si l'authentification cassandra n'est pas activée, procédez comme suit:

    1. Configurer un nouveau centre de données sans authentification Cassandra
    2. Suivez les instructions. Activer l'authentification Cassandra pour la première fois pour activer l'authentification Cassandra sur l'ensemble du cluster (après expansion).
    3. Mettez à jour les composants Edge qui se connectent à Cassandra en suivant la procédure ci-dessous cliquez ici.

    Activer l'authentification Cassandra pour la première fois

    Procédez comme suit pour activer l'authentification Cassandra pour la première fois, ou pour créer un nom d'utilisateur et un mot de passe Cassandra:

    1. Créez un fichier de configuration silencieuse avec le contenu présenté ci-dessous:
      # Specify IP address or DNS name of cassandra node
      IP1=192.168.1.1
      IP2=192.168.1.2
      IP3=192.168.1.3
      
      # Must resolve to IP address or DNS name of host
      HOSTIP=$(hostname -i)
      
      # Set to ‘y’ to enable Cassandra authentication.
      CASS_AUTH=y # Possible values are ‘y/n’
      
      # Cassandra username. If it does not exist, this user would be created as a SUPERUSER
      CASS_USERNAME=cassandra # Default value is cassandra
      # Cassandra Password. If CASS_USERNAME does not exist, create SUPERUSER with this as password
      CASS_PASSWORD=cassandra # Default value is cassandra
      
      # Space-separated IP/DNS names of the Cassandra hosts
      CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1"
      
      # Username of an existing C* user. Only needed if you have disabled or change details of the default cassandra user(‘cassandra’)
      CASS_EXISTING_USERNAME=cassandra  # The default username is cassandra
      # Password of an existing C* user. Only needed if you have disabled or change password of the default cassandra user(‘cassandra’)
      CASS_EXISTING_PASSWORD=cassandra  # The default password is cassandra
      
      # Cassandra port
      CASS_PORT=9042 # The default port is 9042.
    2. Connectez-vous au premier nœud Cassandra et exécutez la commande suivante:
      apigee-service apigee-cassandra enable_cassandra_authentication -f CONFIG

      Vous pouvez éventuellement transmettre les propriétés au script en tant qu'arguments de commande, comme indiqué dans la section l'exemple suivant:

      CASS_AUTH=y HOSTIP=$(hostname -i) CASS_PORT=9042 CASS_EXISTING_USERNAME=cassandra CASS_EXISTING_PASSWORD=cassandra CASS_USERNAME=cassandra CASS_PASSWORD=cassandra  CASS_HOSTS="192.168.1.1:1,1 192.168.1.2:1,1 192.168.1.3:1,1" apigee-service apigee-cassandra enable_cassandra_authentication

      Remarques :

      • Pour les identifiants Cassandra par défaut, la commande ci-dessus active l'authentification Cassandra et redémarre Cassandra.
      • Pour les identifiants autres que ceux par défaut, la commande modifie également le facteur de réplication, crée un et exécute une réparation sur l'espace de clés system_auth.
    3. Répétez les étapes 1 et 2 sur tous les nœuds Cassandra un par un.

    Modifier les identifiants Cassandra après l'installation de Cassandra

    Pour modifier les identifiants Cassandra après l'installation de Cassandra:

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

      Où :

      1. cassIP est l'adresse IP du nœud Cassandra.
      2. 9042 est le port Cassandra par défaut.
      3. L'utilisateur par défaut est cassandra.
      4. Le mot de passe par défaut est cassandra. Si vous avez modifié le mot de passe utilisez le mot de passe actuel. Si le mot de passe contient des caractères spéciaux, entourez-le de guillemets simples.
    2. Exécutez la commande suivante lorsque l'invite cqlsh> s'affiche pour mettre à jour le mot de passe:
      ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
    3. Quittez l'outil cqlsh, comme indiqué dans l'exemple suivant:
      exit
    4. Si vous n'avez pas encore installé le serveur de gestion, les processeurs de messages Les routeurs, serveurs Qpid ou serveurs Postgres définissent les propriétés suivantes dans le champ de configuration Terraform, puis installez ces composants:
      CASS_USERNAME=cassandra
      CASS_PASSWORD=NEW_PASSWORD
    5. Si vous avez déjà installé le serveur de gestion, Processeurs, routeurs, serveurs Qpid ou serveurs Postgres, puis consultez la section Réinitialisation des mots de passe périphériques pour connaître la procédure de mise à jour composants pour utiliser le nouveau mot de passe.