Comment créer le premier utilisateur dans une base de données cassandra?
J'ai essayé:
CREATE USER username WITH PASSWORD "";
et son dit:
Bad Request: Only superusers are allowed to perform CREATE USER queries
Mais je n'ai jamais créé d'utilisateur avant cette tentative, alors comment créer le premier utilisateur dans une base de données cassandra?
Cela semble un peu étrange car c'est comme un problème de poulet et d'oeufs, mais les gens utilisent Cassandra donc je suis sûr qu'il doit y avoir une solution quelque part.
Une fois que vous avez activé l'authentification et l'autorisation, vous pouvez vous connecter (à votre instance locale Cassandra) en tant qu'utilisateur par défaut Cassandra admin comme ceci:
./cqlsh localhost -u cassandra -p cassandra
Si vous exécutez Cassandra sur un serveur Windows, je crois vous devez l'invoquer avec Python :
python cqlsh localhost -u cassandra -p cassandra
Une fois entré, votre première tâche devrait être de créer un autre compte de super-utilisateur.
CREATE USER dba WITH PASSWORD 'bacon' SUPERUSER;
Ensuite, c'est une très bonne idée de définir le mot de passe du superutilisateur actuel Cassandra sur autre chose ... de préférence quelque chose de long et d'incompréhensible. Avec votre nouveau super utilisateur, vous ne devriez pas avoir besoin de la valeur par défaut Cassandra compte à nouveau.
ALTER USER cassandra WITH PASSWORD 'dfsso67347mething54747long67a7ndincom4574prehensi562ble';
Pour plus d'informations, consultez cet article DataStax: Présentation rapide de la sécurité de l'authentification interne et des autorisations dans DataStax Enterprise et Apache Cassandra
Changement
authenticator: AllowAllAuthenticator
À
authenticator: PasswordAuthenticator
dans cassandra.yaml
configuration file et redémarrez Cassandra.
Cela créera un superutilisateur cassandra pour vous avec le redémarrage. Assurez-vous que vous avez Phthon27, thrift-0.91, Cassandra (édition de la communauté de datastax 2.0.9), etc.) Maintenant, lorsque vous vous connectez à cassandra, il vous permet d'entrer en tant que superutilisateur. Vous pouvez maintenant créer un nouveau superutilisateur et modifier le mot de passe du superutilisateur existant également.
python cqlsh localhost -u cassandra -p cassandra
Connected to Test Cluster at localhost:9160.
[cqlsh 4.1.1 | Cassandra 2.0.9 | CQL spec 3.1.1 | Thrift protocol 19.39.0]
Utilisez HELP pour obtenir de l'aide.
cqlsh> create user abc with password 'xyz' superuser;
cqlsh> alter user cassandra with password 'gaurav';
cqlsh> exit
Re: Une fois que vous avez activé l'authentification et l'autorisation (du commentaire du 6 mars à 14:41 par BryceAtNetwork23)
Tout d'abord, la modification de l'autorisation est-elle nécessaire pour configurer l'authentification? Je suppose que non.
Deuxièmement, la configuration de l'autorisation n'est pas très simple si vous avez configuré la réplication de style de centre de données. J'ai configuré l'autorisation en suivant les étapes suivantes:
Cela semble-t-il raisonnable pour les gens qui savent ce qu'ils font?
Pour commencer à utiliser l'authentification, la paire nom d'utilisateur/mot de passe du superutilisateur par défaut est cassandra/cassandra
. Cela devrait résoudre le problème du poulet et des œufs.
Source: http://www.datastax.com/docs/datastax_enterprise3.0/security/native_authentication