Introduction aux utilisateurs et aux autorisations dans mongoDB
Le contenu de cet article est une introduction aux utilisateurs et aux autorisations dans mongoDB. Il a une bonne valeur de référence et j'espère qu'il pourra aider les amis dans le besoin.
Avant-propos
Pour les bases de données, les utilisateurs et les autorisations sont un élément très important, car ils impliquent la sécurité. Alors, quels sont les utilisateurs et les autorisations de mongoDB ?
Instructions
Instructions d'environnement
La version de mongoDB utilisée dans cet article est la 3.6 et le système d'exploitation est Windows.
Autres instructions
En raison du manque d'espace, cet article ne présentera pas le processus du téléchargement à l'installation de la base de données. Concernant les tutoriels d'installation, il existe de nombreux tutoriels sur Internet que vous pouvez suivre. ces tutoriels pour l’installer et l’exécuter. Cet article se concentrera sur la partie 用户和权限
de mongoDB.
Serveur et client
Pour mongoDB, il est divisé en serveur et client.
Dans le répertoire d'installation de l'environnement Windows, double-cliquez pour ouvrir mongod.exe pour démarrer le service mongoDB.
Lorsque le service est démarré, vous pouvez double-cliquer sur mongo.exe pour ouvrir le client et vous connecter au service mongoDB.
Activer le mode d'autorisation
Après l'installation de mongoDB, si vous utilisez directement mongod.exe pour démarrer le service, 默认是没有开启授权模式的
, si votre mongoDB n'active pas le mode d'autorisation, alors personne n'a besoin d'un nom d'utilisateur et mot de passe Vous pouvez également vous connecter au serveur mongoDB et faire ce que vous voulez avec votre base de données, même directement 删库跑路
. Par conséquent, dans un environnement de production, n'oubliez pas d'activer le mode d'autorisation.
Alors, comment activer le mode autorisation ?
Ouvrez cmd, entrez dans le répertoire bin du répertoire d'installation et exécutez la commande suivante :
mongod --auth --port 27017 --dbpath /data/db
Après avoir activé le mode d'autorisation, ouvrez mongo.exe et exécutez show dbs
sous l'administrateur base de données. Ceci, la base de données signalera une erreur, vous rappelant qu'il n'y a pas d'autorisation. Comme suit :
Type d'utilisateur
La base de données mongoDB est grossièrement divisée en deux types d'utilisateurs, l'un est l'utilisateur administrateur, le l'autre est un utilisateur ordinaire.
Administrateur
Nous créons un utilisateur administrateur (rôle userAdmin ou userAdminAnyDatabase) dans la base de données admin. L'utilisateur administrateur peut gérer les utilisateurs ordinaires.
Tout d'abord, démarrez le service mongoDB avec 非授权模式
.
mongod --port 27017 --dbpath /data/db
Entrez ensuite dans la base de données admin et exécutez la commande suivante :
use admin db.createUser( { user: "larry", pwd: "123456", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] } )
Lorsqu'il vous demande Utilisateur ajouté avec succès, cela prouve que l'utilisateur administrateur a été ajouté avec succès.
Utilisateur normal
Lorsque l'utilisateur administrateur est créé avec succès, nous pouvons utiliser cet utilisateur administrateur pour créer un utilisateur normal pour chaque base de données.
Tout d’abord, fermez toutes les fenêtres du shell mongo ci-dessus.
Utilisez ensuite 授权模式
pour démarrer le service mongoDB.
mongod --auth --port 27017 --dbpath /data/db
Ouvrez le client mongo.exe, entrez dans la base de données admin et connectez-vous avec db.auth()
.
Le premier paramètre est le nom d'utilisateur administrateur Larry créé ci-dessus, et le deuxième paramètre est le mot de passe de l'utilisateur administrateur Larry.
Le résultat renvoie 1, indiquant que l'administrateur Larry s'est connecté avec succès.
Ensuite, utilisez cet administrateur pour créer un moddx utilisateur normal pour la base de données photo_app et spécifiez ses autorisations en tant que readWrite.
use photo_app db.createUser( { user: "moddx", pwd: "123456", roles: [{ role: "readWrite", db: "photo_app"}] } )
Afficher les utilisateurs
Tous les comptes globaux
Tout d'abord, connectez-vous à la base de données d'administration en tant que 管理员账户
, puis exécutez la commande suivante :
db.system.users.find().pretty()
Comptes sous la bibliothèque actuelle
Afficher tous les comptes globaux, seuls les administrateurs peuvent les consulter et afficher les comptes dans la bibliothèque actuelle, utilisateurs ordinaires Les utilisateurs et les administrateurs peuvent le voir. La commande pour afficher le compte sous la bibliothèque actuelle est la suivante :
show users
Supprimer l'utilisateur.
Obligatoire Un compte administrateur avec les droits dropUser peut supprimer un utilisateur, vous devez donc vous connecter avec un compte administrateur pour effectuer l'opération.
La commande pour supprimer l'utilisateur ordinaire moddx est la suivante :
db.dropUser("moddx", {w: "majority", wtimeout: 5000})
Révoquer les autorisations
Pour révoquer les autorisations d'un utilisateur, la commande est la suivante :
db.revokeRolesFromUser( "moddx", [ { role: "readWrite", db: "photo_app" } ] )
Remarque : la commande ci-dessus Bien que les autorisations de lecture et d'écriture de l'utilisateur moddx dans la base de données photo_app aient été révoquées, l'utilisateur n'a pas été supprimé et peut toujours se connecter.
Accorder des autorisations
La commande suivante donne à l'utilisateur moddx des autorisations de lecture et d'écriture dans photo_app, et en même temps, lui donne des autorisations de lecture dans la base de données demodb
use photo_app db.grantRolesToUser( "moddx", [ "readWrite" , { role: "read", db: "demodb" } ], { w: "majority" , wtimeout: 4000 } )
Modification du mot de passe
La commande suivante modifie le mot de passe de l'utilisateur moddx dans photo_app :
use photo_app db.changeUserPassword("moddx", "newpwd")
Résumé
Concernant les utilisateurs et les autorisations, ce sont les commandes d'opération shell couramment utilisées . J'espère qu'il pourra être utilisé pour Vous utilisez mongoDB pour plus de commodité.
Recommandations associées :
MongoDB Journey (2) Opérations de base (MongoDB Javascript Shell)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Les solutions pour résoudre les problèmes d'expiration de Navicat incluent : renouveler la licence ; désinstaller et réinstaller ; désactiver les mises à jour automatiques ; utiliser la version gratuite de Navicat Premium ; contacter le support client de Navicat.

Pour les développeurs front-end, la difficulté d'apprendre Node.js dépend de leur base JavaScript, de leur expérience en programmation côté serveur, de leur familiarité avec la ligne de commande et de leur style d'apprentissage. La courbe d'apprentissage comprend des modules d'entrée de gamme et de niveau avancé axés sur les concepts fondamentaux, l'architecture côté serveur, l'intégration de bases de données et la programmation asynchrone. Dans l'ensemble, apprendre Node.js n'est pas difficile pour les développeurs qui ont une base solide en JavaScript et sont prêts à investir du temps et des efforts, mais pour ceux qui manquent d'expérience pertinente, il peut y avoir certains défis à surmonter.

Pour vous connecter à MongoDB à l'aide de Navicat, vous devez : Installer Navicat Créer une connexion MongoDB : a. Entrez le nom de connexion, l'adresse de l'hôte et le port b. Entrez les informations d'authentification (si nécessaire) Ajoutez un certificat SSL (si nécessaire) Vérifiez la connexion. Enregistrez la connexion

Les modules les plus couramment utilisés dans Node.js incluent : Module de système de fichiers pour les opérations sur les fichiers. Module réseau pour la communication réseau. Module de flux pour le traitement des flux de données. Module de base de données pour interagir avec les bases de données. D'autres modules utilitaires tels que le chiffrement, les chaînes de requête, l'analyse de chaînes et le framework HTTP.

Pour les applications Node.js, le choix d'une base de données dépend des exigences de l'application. Les bases de données NoSQL MongoDB offrent de la flexibilité, Redis offre une simultanéité élevée, Cassandra gère les données de séries chronologiques et Elasticsearch est dédié à la recherche. La base de données SQL MySQL offre d'excellentes performances, PostgreSQL est riche en fonctionnalités, SQLite est léger et Oracle Database est complet. Lors du choix, tenez compte des types de données, des requêtes, des performances, du caractère transactionnel, de la disponibilité, des licences et du coût.

Étapes pour se connecter à une base de données dans Node.js : Installez le package MySQL, MongoDB ou PostgreSQL. Créez un objet de connexion à la base de données. Ouvrez une connexion à une base de données et gérez les erreurs de connexion.

Se connecter à une base de données dans Node.js nécessite de choisir un système de base de données (relationnelle ou non relationnelle) puis d'établir une connexion à l'aide de modules spécifiques à ce type. Les modules courants incluent mysql (MySQL), pg (PostgreSQL), mongodb (MongoDB) et redis (Redis). Une fois la connexion établie, vous pouvez utiliser des instructions de requête pour récupérer des données et des instructions de mise à jour pour modifier les données. Enfin, la connexion doit être fermée lorsque toutes les opérations sont terminées pour libérer les ressources. Améliorez les performances et la sécurité en suivant ces bonnes pratiques, telles que l'utilisation du regroupement de connexions, les requêtes paramétrées et la gestion gracieuse des erreurs.

.NET 4.0 est utilisé pour créer une variété d'applications et offre aux développeurs d'applications des fonctionnalités riches, notamment : programmation orientée objet, flexibilité, architecture puissante, intégration du cloud computing, optimisation des performances, bibliothèques étendues, sécurité, évolutivité, accès aux données et mobile. soutien au développement.
