Table des matières
Avant-propos
Instructions
Instructions d'environnement
Autres instructions
Serveur et client
Activer le mode d'autorisation
Type d'utilisateur
Administrateur
Utilisateur normal
Afficher les utilisateurs
Tous les comptes globaux
Comptes sous la bibliothèque actuelle
Supprimer l'utilisateur.
Révoquer les autorisations
Accorder des autorisations
Modification du mot de passe
Résumé
Maison interface Web js tutoriel Introduction aux utilisateurs et aux autorisations dans mongoDB

Introduction aux utilisateurs et aux autorisations dans mongoDB

Jul 27, 2018 am 11:03 AM
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
Copier après la connexion
Copier après la connexion

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 :

Introduction aux utilisateurs et aux autorisations dans mongoDB

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
Copier après la connexion

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" } ]
  }
)
Copier après la connexion

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
Copier après la connexion
Copier après la connexion

Ouvrez le client mongo.exe, entrez dans la base de données admin et connectez-vous avec db.auth().

Introduction aux utilisateurs et aux autorisations dans mongoDB

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"}]
}
)
Copier après la connexion

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()
Copier après la connexion

Introduction aux utilisateurs et aux autorisations dans mongoDB

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
Copier après la connexion

Introduction aux utilisateurs et aux autorisations dans mongoDB

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})
Copier après la connexion

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" }
    ]
)
Copier après la connexion

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 }
)
Copier après la connexion

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")
Copier après la connexion

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] mongodb et php php mongodb mise à jour de la connexion php mongodb php mongodb non autorisé

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

Que faire si Navicat expire Que faire si Navicat expire Apr 23, 2024 pm 12:12 PM

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.

Est-il difficile d'apprendre nodejs sur le front-end ? Est-il difficile d'apprendre nodejs sur le front-end ? Apr 21, 2024 am 04:57 AM

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.

Comment connecter Navicat à MongoDB Comment connecter Navicat à MongoDB Apr 24, 2024 am 11:27 AM

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

Quels sont les modules couramment utilisés dans nodejs ? Quels sont les modules couramment utilisés dans nodejs ? Apr 21, 2024 am 04:34 AM

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.

Quelle base de données est bonne pour nodejs ? Quelle base de données est bonne pour nodejs ? Apr 21, 2024 am 05:06 AM

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.

Comment connecter nodejs à la base de données Comment connecter nodejs à la base de données Apr 21, 2024 am 05:07 AM

É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.

Comment nodejs implémente la base de données Comment nodejs implémente la base de données Apr 21, 2024 am 05:42 AM

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.

A quoi sert net4.0 A quoi sert net4.0 May 10, 2024 am 01:09 AM

.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.

See all articles