DBAtlas · Atlas de operações de banco de dados

Listar usuários / roles

Oracle

SELECT username, account_status, default_tablespace, created
FROM dba_users
ORDER BY username;

account_status mostra os estados LOCKED/EXPIRED. Para roles, use dba_roles.

PostgreSQL

SELECT rolname, rolsuper, rolcanlogin, rolvaliduntil
FROM pg_roles
ORDER BY rolname;
-- Shortcut (psql): \du

No PostgreSQL, um usuário é uma role com o atributo LOGIN; rolcanlogin faz a distinção.

MySQL

SELECT user, host, account_locked, password_expired
FROM mysql.user
ORDER BY user;

No MySQL, uma identidade é um par usuário + host ('app'@'%' e 'app'@'localhost' são diferentes).

SQL Server

-- Server logins:
SELECT name, type_desc, is_disabled FROM sys.server_principals
WHERE type IN ('S','U','G');
-- Database users:
SELECT name, type_desc FROM sys.database_principals
WHERE type IN ('S','U','G');

Um login é de nível de servidor, um user é de nível de banco de dados; os dois são mapeados pelo SID.

MongoDB

// Users in the current database:
db.getUsers()
// All users in the system: use admin; db.system.users.find({}, {user:1, db:1, roles:1})

Os usuários são definidos no banco de dados em que foram criados (authenticationDatabase).

Redis

ACL LIST
# Names only: ACL USERS
# Your own identity: ACL WHOAMI

O sistema de ACL do Redis 6+. Antes disso, havia um único usuário 'default' e o requirepass.

Abrir no DBAtlas →