DBAtlas · Veritabanı operasyon atlası

Bir kullanıcının yetkilerini göster

Oracle

SELECT privilege FROM dba_sys_privs WHERE grantee = 'APP'
UNION ALL SELECT granted_role FROM dba_role_privs WHERE grantee = 'APP'
UNION ALL SELECT privilege||' ON '||owner||'.'||table_name
          FROM dba_tab_privs WHERE grantee = 'APP';

Grantee büyük harf saklanır. Rol üzerinden gelen dolaylı yetkiler için role_role_privs'i de dolaşın.

PostgreSQL

SELECT grantee, table_schema, table_name, privilege_type
FROM information_schema.role_table_grants
WHERE grantee = 'app';
-- Rol üyelikleri (doğrudan): \drg app (PG16+; öncesi \du app)

Rol üyelikleri (kalıtım) pg_auth_members'ta tutulur; \du/\drg yalnızca doğrudan üyelikleri gösterir, dolaylı üyelik için pg_has_role('app', '<rol>', 'MEMBER') kullanın.

MySQL

SHOW GRANTS FOR 'app'@'%';

Roller (MySQL 8) için önce SET ROLE ALL veya SHOW GRANTS FOR 'app'@'%' USING 'rol_adi';

SQL Server

SELECT dp.name AS principal, p.permission_name,
       p.state_desc, o.name AS object
FROM sys.database_permissions p
JOIN sys.database_principals dp ON p.grantee_principal_id = dp.principal_id
LEFT JOIN sys.objects o ON p.major_id = o.object_id
WHERE dp.name = 'app';

Rol üzerinden gelen yetkiler için sys.database_role_members üzerinden üyelikleri de kontrol edin.

MongoDB

db.getUser("app", { showPrivileges: true, showCredentials: false })

showPrivileges rollerin genişletilmiş (etkin) izinlerini de listeler.

Redis

ACL GETUSER app

Etkin komutlar, anahtar desenleri (~), pub/sub kanalları (&) ve parola hash'lerini döndürür.

DBAtlas'ta aç →