DBAtlas · Atlas d'exploitation des bases de données

31 RoleNotFound: Role not found

MongoDB

Que signifie cette erreur ?

Le rôle référencé n'est pas défini dans MongoDB. Un nom de rôle inexistant a été utilisé lors de l'attribution d'un rôle à un utilisateur, de la mise à jour d'un rôle ou de la consultation des privilèges d'un rôle.

Cause

Nom de rôle mal orthographié ou jamais créé dans grantRolesToUser/createUser ; recherche du rôle dans la mauvaise base (les rôles sont liés à une base précise) ; ou rôle personnalisé (non intégré) pas encore défini avec createRole.

Comment la corriger

Vérifiez le nom du rôle et la base à laquelle il appartient. Listez les rôles existants : db.getRoles({showBuiltinRoles: false}) ou la requête d'administration équivalente sur toutes les bases. Si le rôle personnalisé n'existe pas, créez-le d'abord : db.createRole({role:'reader', privileges:[...], roles:[]}). Indiquez la bonne db lors de l'attribution : db.grantRolesToUser('app_user', [{role:'reader', db:'app'}]).

Ouvrir dans DBAtlas →

Autres entrées pour ce moteur