Commit d4a2721a85
Unsigned
Layout: unified · split
databases/administrators/mssql_admins.sql → databases/administrators/microsoft-sql/mssql_admins.sql renamed
databases/administrators/mongo/README.org added +104
| @@ -0,0 +1,104 @@ | |||
| 1 | #+title: MongoDB Scripts | ||
| 2 | |||
| 3 | * =admins.py= | ||
| 4 | |||
| 5 | Dependency: | ||
| 6 | |||
| 7 | #+begin_src shell | ||
| 8 | pip install pymongo | ||
| 9 | #+end_src | ||
| 10 | |||
| 11 | #+begin_src python | ||
| 12 | python ./admins.py | ||
| 13 | #+end_src | ||
| 14 | |||
| 15 | Example output: | ||
| 16 | |||
| 17 | #+begin_src json | ||
| 18 | [ | ||
| 19 | { | ||
| 20 | "_id": "admin.admin", | ||
| 21 | "user": "admin", | ||
| 22 | "db": "admin", | ||
| 23 | "roles": [ | ||
| 24 | { | ||
| 25 | "role": "userAdminAnyDatabase", | ||
| 26 | "db": "admin" | ||
| 27 | }, | ||
| 28 | { | ||
| 29 | "role": "readWriteAnyDatabase", | ||
| 30 | "db": "admin" | ||
| 31 | }, | ||
| 32 | { | ||
| 33 | "role": "dbAdminAnyDatabase", | ||
| 34 | "db": "admin" | ||
| 35 | }, | ||
| 36 | { | ||
| 37 | "role": "clusterAdmin", | ||
| 38 | "db": "admin" | ||
| 39 | } | ||
| 40 | ], | ||
| 41 | "credentials": { | ||
| 42 | "SCRAM-SHA-1": { | ||
| 43 | "iterationCount": 10000, | ||
| 44 | "salt": "abc123", | ||
| 45 | "storedKey": "storedKeyHash", | ||
| 46 | "serverKey": "serverKeyHash" | ||
| 47 | }, | ||
| 48 | "SCRAM-SHA-256": { | ||
| 49 | "iterationCount": 15000, | ||
| 50 | "salt": "def456", | ||
| 51 | "storedKey": "storedKeyHash256", | ||
| 52 | "serverKey": "serverKeyHash256" | ||
| 53 | } | ||
| 54 | } | ||
| 55 | }, | ||
| 56 | { | ||
| 57 | "_id": "test.user1", | ||
| 58 | "user": "user1", | ||
| 59 | "db": "test", | ||
| 60 | "roles": [ | ||
| 61 | { | ||
| 62 | "role": "readWrite", | ||
| 63 | "db": "test" | ||
| 64 | } | ||
| 65 | ], | ||
| 66 | "credentials": { | ||
| 67 | "SCRAM-SHA-1": { | ||
| 68 | "iterationCount": 10000, | ||
| 69 | "salt": "ghi789", | ||
| 70 | "storedKey": "storedKeyHashUser1", | ||
| 71 | "serverKey": "serverKeyHashUser1" | ||
| 72 | } | ||
| 73 | } | ||
| 74 | }, | ||
| 75 | { | ||
| 76 | "_id": "test.ldapUser", | ||
| 77 | "user": "ldapUser", | ||
| 78 | "db": "test", | ||
| 79 | "roles": [ | ||
| 80 | { | ||
| 81 | "role": "read", | ||
| 82 | "db": "test" | ||
| 83 | } | ||
| 84 | ], | ||
| 85 | "userSource": "ldap" | ||
| 86 | }, | ||
| 87 | { | ||
| 88 | "_id": "admin.x509User", | ||
| 89 | "user": "x509User", | ||
| 90 | "db": "$external", | ||
| 91 | "roles": [ | ||
| 92 | { | ||
| 93 | "role": "readWrite", | ||
| 94 | "db": "admin" | ||
| 95 | } | ||
| 96 | ], | ||
| 97 | "credentials": { | ||
| 98 | "MONGODB-X509": { | ||
| 99 | "subject": "CN=x509User,OU=OrgUnit,O=Org,L=City,ST=State,C=Country" | ||
| 100 | } | ||
| 101 | } | ||
| 102 | } | ||
| 103 | ] | ||
| 104 | #+end_src | ||
databases/administrators/mongo/admins.py added +16
| @@ -0,0 +1,16 @@ | |||
| 1 | from pymongo import MongoClient | ||
| 2 | |||
| 3 | # Connect to the MongoDB server | ||
| 4 | client = MongoClient("mongodb://localhost:27017/") | ||
| 5 | |||
| 6 | # Select the 'admin' database | ||
| 7 | db = client.admin | ||
| 8 | |||
| 9 | # Query the 'system.users' collection | ||
| 10 | users = db.system.users.find( | ||
| 11 | {}, {"user": 1, "db": 1, "roles": 1, "credentials": 1, "userSource": 1} | ||
| 12 | ) | ||
| 13 | |||
| 14 | # Print the results in a pretty format | ||
| 15 | for user in users: | ||
| 16 | print(user) | ||
databases/administrators/mysql/README.org added +108
| @@ -0,0 +1,108 @@ | |||
| 1 | #+title: MySQL Admins | ||
| 2 | |||
| 3 | * =mysql_admins.sql= | ||
| 4 | |||
| 5 | #+begin_src sql | ||
| 6 | SELECT * FROM information_schema.user_privileges; | ||
| 7 | #+end_src | ||
| 8 | |||
| 9 | #+begin_src | ||
| 10 | MySQL [(none)]> SELECT * FROM information_schema.user_privileges; | ||
| 11 | +--------------------------------+---------------+---------------------------------+--------------+ | ||
| 12 | | GRANTEE | TABLE_CATALOG | PRIVILEGE_TYPE | IS_GRANTABLE | | ||
| 13 | +--------------------------------+---------------+---------------------------------+--------------+ | ||
| 14 | | 'mysql.infoschema'@'localhost' | def | SELECT | NO | | ||
| 15 | | 'mysql.infoschema'@'localhost' | def | AUDIT_ABORT_EXEMPT | NO | | ||
| 16 | | 'mysql.infoschema'@'localhost' | def | FIREWALL_EXEMPT | NO | | ||
| 17 | | 'mysql.infoschema'@'localhost' | def | SYSTEM_USER | NO | | ||
| 18 | | 'mysql.session'@'localhost' | def | SHUTDOWN | NO | | ||
| 19 | | 'mysql.session'@'localhost' | def | SUPER | NO | | ||
| 20 | | 'mysql.session'@'localhost' | def | AUDIT_ABORT_EXEMPT | NO | | ||
| 21 | | 'mysql.session'@'localhost' | def | AUTHENTICATION_POLICY_ADMIN | NO | | ||
| 22 | | 'mysql.session'@'localhost' | def | BACKUP_ADMIN | NO | | ||
| 23 | | 'mysql.session'@'localhost' | def | CLONE_ADMIN | NO | | ||
| 24 | | 'mysql.session'@'localhost' | def | CONNECTION_ADMIN | NO | | ||
| 25 | | 'mysql.session'@'localhost' | def | FIREWALL_EXEMPT | NO | | ||
| 26 | | 'mysql.session'@'localhost' | def | PERSIST_RO_VARIABLES_ADMIN | NO | | ||
| 27 | | 'mysql.session'@'localhost' | def | SESSION_VARIABLES_ADMIN | NO | | ||
| 28 | | 'mysql.session'@'localhost' | def | SYSTEM_USER | NO | | ||
| 29 | | 'mysql.session'@'localhost' | def | SYSTEM_VARIABLES_ADMIN | NO | | ||
| 30 | | 'mysql.sys'@'localhost' | def | USAGE | NO | | ||
| 31 | | 'mysql.sys'@'localhost' | def | AUDIT_ABORT_EXEMPT | NO | | ||
| 32 | | 'mysql.sys'@'localhost' | def | FIREWALL_EXEMPT | NO | | ||
| 33 | | 'mysql.sys'@'localhost' | def | SYSTEM_USER | NO | | ||
| 34 | | 'root'@'localhost' | def | SELECT | YES | | ||
| 35 | | 'root'@'localhost' | def | INSERT | YES | | ||
| 36 | | 'root'@'localhost' | def | UPDATE | YES | | ||
| 37 | | 'root'@'localhost' | def | DELETE | YES | | ||
| 38 | | 'root'@'localhost' | def | CREATE | YES | | ||
| 39 | | 'root'@'localhost' | def | DROP | YES | | ||
| 40 | | 'root'@'localhost' | def | RELOAD | YES | | ||
| 41 | | 'root'@'localhost' | def | SHUTDOWN | YES | | ||
| 42 | | 'root'@'localhost' | def | PROCESS | YES | | ||
| 43 | | 'root'@'localhost' | def | FILE | YES | | ||
| 44 | | 'root'@'localhost' | def | REFERENCES | YES | | ||
| 45 | | 'root'@'localhost' | def | INDEX | YES | | ||
| 46 | | 'root'@'localhost' | def | ALTER | YES | | ||
| 47 | | 'root'@'localhost' | def | SHOW DATABASES | YES | | ||
| 48 | | 'root'@'localhost' | def | SUPER | YES | | ||
| 49 | | 'root'@'localhost' | def | CREATE TEMPORARY TABLES | YES | | ||
| 50 | | 'root'@'localhost' | def | LOCK TABLES | YES | | ||
| 51 | | 'root'@'localhost' | def | EXECUTE | YES | | ||
| 52 | | 'root'@'localhost' | def | REPLICATION SLAVE | YES | | ||
| 53 | | 'root'@'localhost' | def | REPLICATION CLIENT | YES | | ||
| 54 | | 'root'@'localhost' | def | CREATE VIEW | YES | | ||
| 55 | | 'root'@'localhost' | def | SHOW VIEW | YES | | ||
| 56 | | 'root'@'localhost' | def | CREATE ROUTINE | YES | | ||
| 57 | | 'root'@'localhost' | def | ALTER ROUTINE | YES | | ||
| 58 | | 'root'@'localhost' | def | CREATE USER | YES | | ||
| 59 | | 'root'@'localhost' | def | EVENT | YES | | ||
| 60 | | 'root'@'localhost' | def | TRIGGER | YES | | ||
| 61 | | 'root'@'localhost' | def | CREATE TABLESPACE | YES | | ||
| 62 | | 'root'@'localhost' | def | CREATE ROLE | YES | | ||
| 63 | | 'root'@'localhost' | def | DROP ROLE | YES | | ||
| 64 | | 'root'@'localhost' | def | ALLOW_NONEXISTENT_DEFINER | YES | | ||
| 65 | | 'root'@'localhost' | def | APPLICATION_PASSWORD_ADMIN | YES | | ||
| 66 | | 'root'@'localhost' | def | AUDIT_ABORT_EXEMPT | YES | | ||
| 67 | | 'root'@'localhost' | def | AUDIT_ADMIN | YES | | ||
| 68 | | 'root'@'localhost' | def | AUTHENTICATION_POLICY_ADMIN | YES | | ||
| 69 | | 'root'@'localhost' | def | BACKUP_ADMIN | YES | | ||
| 70 | | 'root'@'localhost' | def | BINLOG_ADMIN | YES | | ||
| 71 | | 'root'@'localhost' | def | BINLOG_ENCRYPTION_ADMIN | YES | | ||
| 72 | | 'root'@'localhost' | def | CLONE_ADMIN | YES | | ||
| 73 | | 'root'@'localhost' | def | CONNECTION_ADMIN | YES | | ||
| 74 | | 'root'@'localhost' | def | CREATE_SPATIAL_REFERENCE_SYSTEM | YES | | ||
| 75 | | 'root'@'localhost' | def | ENCRYPTION_KEY_ADMIN | YES | | ||
| 76 | | 'root'@'localhost' | def | FIREWALL_EXEMPT | YES | | ||
| 77 | | 'root'@'localhost' | def | FLUSH_OPTIMIZER_COSTS | YES | | ||
| 78 | | 'root'@'localhost' | def | FLUSH_PRIVILEGES | YES | | ||
| 79 | | 'root'@'localhost' | def | FLUSH_STATUS | YES | | ||
| 80 | | 'root'@'localhost' | def | FLUSH_TABLES | YES | | ||
| 81 | | 'root'@'localhost' | def | FLUSH_USER_RESOURCES | YES | | ||
| 82 | | 'root'@'localhost' | def | GROUP_REPLICATION_ADMIN | YES | | ||
| 83 | | 'root'@'localhost' | def | GROUP_REPLICATION_STREAM | YES | | ||
| 84 | | 'root'@'localhost' | def | INNODB_REDO_LOG_ARCHIVE | YES | | ||
| 85 | | 'root'@'localhost' | def | INNODB_REDO_LOG_ENABLE | YES | | ||
| 86 | | 'root'@'localhost' | def | OPTIMIZE_LOCAL_TABLE | YES | | ||
| 87 | | 'root'@'localhost' | def | PASSWORDLESS_USER_ADMIN | YES | | ||
| 88 | | 'root'@'localhost' | def | PERSIST_RO_VARIABLES_ADMIN | YES | | ||
| 89 | | 'root'@'localhost' | def | REPLICATION_APPLIER | YES | | ||
| 90 | | 'root'@'localhost' | def | REPLICATION_SLAVE_ADMIN | YES | | ||
| 91 | | 'root'@'localhost' | def | RESOURCE_GROUP_ADMIN | YES | | ||
| 92 | | 'root'@'localhost' | def | RESOURCE_GROUP_USER | YES | | ||
| 93 | | 'root'@'localhost' | def | ROLE_ADMIN | YES | | ||
| 94 | | 'root'@'localhost' | def | SENSITIVE_VARIABLES_OBSERVER | YES | | ||
| 95 | | 'root'@'localhost' | def | SERVICE_CONNECTION_ADMIN | YES | | ||
| 96 | | 'root'@'localhost' | def | SESSION_VARIABLES_ADMIN | YES | | ||
| 97 | | 'root'@'localhost' | def | SET_ANY_DEFINER | YES | | ||
| 98 | | 'root'@'localhost' | def | SHOW_ROUTINE | YES | | ||
| 99 | | 'root'@'localhost' | def | SYSTEM_USER | YES | | ||
| 100 | | 'root'@'localhost' | def | SYSTEM_VARIABLES_ADMIN | YES | | ||
| 101 | | 'root'@'localhost' | def | TABLE_ENCRYPTION_ADMIN | YES | | ||
| 102 | | 'root'@'localhost' | def | TELEMETRY_LOG_ADMIN | YES | | ||
| 103 | | 'root'@'localhost' | def | TRANSACTION_GTID_TAG | YES | | ||
| 104 | | 'root'@'localhost' | def | XA_RECOVER_ADMIN | YES | | ||
| 105 | | 'cmc'@'%' | def | USAGE | NO | | ||
| 106 | +--------------------------------+---------------+---------------------------------+--------------+ | ||
| 107 | 92 rows in set (0.001 sec) | ||
| 108 | #+end_src | ||
databases/administrators/mysql/mysql_admins.sql added +1
| @@ -0,0 +1 @@ | |||
| 1 | SELECT * FROM information_schema.user_privileges; | ||
Password Configuration → databases/administrators/mysql/mysql_admins_alt.sql renamed −3
| @@ -12,7 +12,3 @@ WHERE db = @db_name; | |||
| 12 | -- Column Permissions | 12 | -- Column Permissions |
| 13 | SELECT ... FROM mysql.columns_priv | 13 | SELECT ... FROM mysql.columns_priv |
| 14 | WHERE db = @db_name; | 14 | WHERE db = @db_name; |
| 15 | |||
| 16 | SHOW GLOBAL VARIABLES LIKE 'validate_password%'; | ||
| 17 | SHOW VARIABLES LIKE 'validate_password%'; | ||
databases/administrators/mysql_admins.sh deleted −1
| @@ -1 +0,0 @@ | |||
| 1 | mysql -u root -p | ||
databases/administrators/mysql_admins.sql deleted −1
| @@ -1 +0,0 @@ | |||
| 1 | SELECT ** FROM information_schema.user_privileges; | ||
databases/administrators/oracle_admins.sql → databases/administrators/oracle/oracle_admins.sql renamed
databases/administrators/oracle_admins_alt.sql → databases/administrators/oracle/oracle_admins_alt.sql renamed
databases/administrators/postgres/README.org added +45
| @@ -0,0 +1,45 @@ | |||
| 1 | #+title: Postgres Admins | ||
| 2 | |||
| 3 | * =admins.sql= | ||
| 4 | |||
| 5 | #+begin_src sql | ||
| 6 | SELECT | ||
| 7 | r.rolname AS role_name, | ||
| 8 | r.rolsuper AS is_superuser, | ||
| 9 | r.rolinherit AS inherits_privileges, | ||
| 10 | r.rolcreaterole AS can_create_roles, | ||
| 11 | r.rolcreatedb AS can_create_db, | ||
| 12 | r.rolcanlogin AS can_login, | ||
| 13 | r.rolreplication AS can_replication, | ||
| 14 | r.rolconnlimit AS connection_limit, | ||
| 15 | r.rolvaliduntil AS valid_until, | ||
| 16 | ARRAY( | ||
| 17 | SELECT b.rolname | ||
| 18 | FROM pg_auth_members m | ||
| 19 | JOIN pg_roles b ON (m.roleid = b.oid) | ||
| 20 | WHERE m.member = r.oid | ||
| 21 | ) AS member_of | ||
| 22 | FROM pg_roles r; | ||
| 23 | #+end_src | ||
| 24 | |||
| 25 | #+begin_src | ||
| 26 | | role_name | is_superuser | inherits_privileges | can_create_roles | can_create_db | can_login | can_replication | connection_limit | valid_until | member_of | | ||
| 27 | |-----------------------------+--------------+---------------------+------------------+---------------+-----------+-----------------+------------------+------------------------+--------------------------------------------------------------| | ||
| 28 | | cmc | true | true | true | true | true | true | -1 | | {} | | ||
| 29 | | pg_database_owner | false | true | false | false | false | false | -1 | | {} | | ||
| 30 | | pg_read_all_data | false | true | false | false | false | false | -1 | | {} | | ||
| 31 | | pg_write_all_data | false | true | false | false | false | false | -1 | | {} | | ||
| 32 | | pg_monitor | false | true | false | false | false | false | -1 | | {pg_read_all_settings,pg_read_all_stats,pg_stat_scan_tables} | | ||
| 33 | | pg_read_all_settings | false | true | false | false | false | false | -1 | | {} | | ||
| 34 | | pg_read_all_stats | false | true | false | false | false | false | -1 | | {} | | ||
| 35 | | pg_stat_scan_tables | false | true | false | false | false | false | -1 | | {} | | ||
| 36 | | pg_read_server_files | false | true | false | false | false | false | -1 | | {} | | ||
| 37 | | pg_write_server_files | false | true | false | false | false | false | -1 | | {} | | ||
| 38 | | pg_execute_server_program | false | true | false | false | false | false | -1 | | {} | | ||
| 39 | | pg_signal_backend | false | true | false | false | false | false | -1 | | {} | | ||
| 40 | | pg_checkpoint | false | true | false | false | false | false | -1 | | {} | | ||
| 41 | | pg_maintain | false | true | false | false | false | false | -1 | | {} | | ||
| 42 | | pg_use_reserved_connections | false | true | false | false | false | false | -1 | | {} | | ||
| 43 | | pg_create_subscription | false | true | false | false | false | false | -1 | | {} | | ||
| 44 | | testuser | false | true | false | false | true | false | -1 | 2025-12-31 00:00:00-06 | {} | | ||
| 45 | #+end_src | ||
databases/administrators/postgres/admins.sql added +22
| @@ -0,0 +1,22 @@ | |||
| 1 | -- References: | ||
| 2 | -- : https://www.postgresql.org/docs/current/user-manag.html | ||
| 3 | -- : https://www.postgresql.org/docs/current/view-pg-roles.html | ||
| 4 | -- : https://www.postgresql.org/docs/current/catalog-pg-auth-members.html | ||
| 5 | |||
| 6 | SELECT | ||
| 7 | r.rolname AS role_name, | ||
| 8 | r.rolsuper AS is_superuser, | ||
| 9 | r.rolinherit AS inherits_privileges, | ||
| 10 | r.rolcreaterole AS can_create_roles, | ||
| 11 | r.rolcreatedb AS can_create_db, | ||
| 12 | r.rolcanlogin AS can_login, | ||
| 13 | r.rolreplication AS can_replication, | ||
| 14 | r.rolconnlimit AS connection_limit, | ||
| 15 | r.rolvaliduntil AS valid_until, | ||
| 16 | ARRAY( | ||
| 17 | SELECT b.rolname | ||
| 18 | FROM pg_auth_members m | ||
| 19 | JOIN pg_roles b ON (m.roleid = b.oid) | ||
| 20 | WHERE m.member = r.oid | ||
| 21 | ) AS member_of | ||
| 22 | FROM pg_roles r;\ No newline at end of file | ||
databases/passwords/mysql/README.org added +76
| @@ -0,0 +1,76 @@ | |||
| 1 | #+title: MySQL Passwords | ||
| 2 | |||
| 3 | * =mysql_admins.sql= | ||
| 4 | |||
| 5 | #+begin_src sql | ||
| 6 | SELECT user, host, plugin FROM mysql.user; | ||
| 7 | #+end_src | ||
| 8 | |||
| 9 | #+begin_src | ||
| 10 | mysql> SELECT user, host, plugin FROM mysql.user; | ||
| 11 | +------------------+-----------+-----------------------+ | ||
| 12 | | user | host | plugin | | ||
| 13 | +------------------+-----------+-----------------------+ | ||
| 14 | | cmc | % | caching_sha2_password | | ||
| 15 | | mysql.infoschema | localhost | caching_sha2_password | | ||
| 16 | | mysql.session | localhost | caching_sha2_password | | ||
| 17 | | mysql.sys | localhost | caching_sha2_password | | ||
| 18 | | root | localhost | caching_sha2_password | | ||
| 19 | +------------------+-----------+-----------------------+ | ||
| 20 | 5 rows in set (0.001 sec) | ||
| 21 | #+end_src | ||
| 22 | |||
| 23 | #+begin_src sql | ||
| 24 | SHOW GLOBAL VARIABLES LIKE 'validate_password%'; | ||
| 25 | SHOW VARIABLES LIKE 'validate_password%'; | ||
| 26 | #+end_src | ||
| 27 | |||
| 28 | #+begin_src | ||
| 29 | mysql> SHOW GLOBAL VARIABLES LIKE 'validate_password%'; | ||
| 30 | +-------------------------------------------------+--------+ | ||
| 31 | | Variable_name | Value | | ||
| 32 | +-------------------------------------------------+--------+ | ||
| 33 | | validate_password.changed_characters_percentage | 0 | | ||
| 34 | | validate_password.check_user_name | ON | | ||
| 35 | | validate_password.dictionary_file | | | ||
| 36 | | validate_password.length | 8 | | ||
| 37 | | validate_password.mixed_case_count | 1 | | ||
| 38 | | validate_password.number_count | 1 | | ||
| 39 | | validate_password.policy | MEDIUM | | ||
| 40 | | validate_password.special_char_count | 1 | | ||
| 41 | +-------------------------------------------------+--------+ | ||
| 42 | 8 rows in set (0.004 sec) | ||
| 43 | |||
| 44 | mysql> SHOW VARIABLES LIKE 'validate_password%'; | ||
| 45 | +-------------------------------------------------+--------+ | ||
| 46 | | Variable_name | Value | | ||
| 47 | +-------------------------------------------------+--------+ | ||
| 48 | | validate_password.changed_characters_percentage | 0 | | ||
| 49 | | validate_password.check_user_name | ON | | ||
| 50 | | validate_password.dictionary_file | | | ||
| 51 | | validate_password.length | 8 | | ||
| 52 | | validate_password.mixed_case_count | 1 | | ||
| 53 | | validate_password.number_count | 1 | | ||
| 54 | | validate_password.policy | MEDIUM | | ||
| 55 | | validate_password.special_char_count | 1 | | ||
| 56 | +-------------------------------------------------+--------+ | ||
| 57 | 8 rows in set (0.004 sec) | ||
| 58 | #+end_src | ||
| 59 | |||
| 60 | #+begin_src sql | ||
| 61 | SELECT * FROM mysql.user | ||
| 62 | #+end_src | ||
| 63 | |||
| 64 | #+begin_src | ||
| 65 | MySQL [(none)]> SELECT * FROM mysql.user; | ||
| 66 | +-----------+------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+------------------------------------------------------------------------+------------------+-----------------------+-------------------+----------------+------------------+----------------+------------------------+---------------------+--------------------------+-----------------+ | ||
| 67 | | Host | User | Select_priv | Insert_priv | Update_priv | Delete_priv | Create_priv | Drop_priv | Reload_priv | Shutdown_priv | Process_priv | File_priv | Grant_priv | References_priv | Index_priv | Alter_priv | Show_db_priv | Super_priv | Create_tmp_table_priv | Lock_tables_priv | Execute_priv | Repl_slave_priv | Repl_client_priv | Create_view_priv | Show_view_priv | Create_routine_priv | Alter_routine_priv | Create_user_priv | Event_priv | Trigger_priv | Create_tablespace_priv | ssl_type | ssl_cipher | x509_issuer | x509_subject | max_questions | max_updates | max_connections | max_user_connections | plugin | authentication_string | password_expired | password_last_changed | password_lifetime | account_locked | Create_role_priv | Drop_role_priv | Password_reuse_history | Password_reuse_time | Password_require_current | User_attributes | | ||
| 68 | +-----------+------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+------------------------------------------------------------------------+------------------+-----------------------+-------------------+----------------+------------------+----------------+------------------------+---------------------+--------------------------+-----------------+ | ||
| 69 | | % | cmc | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | | | | | 0 | 0 | 0 | 0 | caching_sha2_password | | N | 2025-04-25 16:28:52 | NULL | N | N | N | NULL | NULL | NULL | NULL | | ||
| 70 | | localhost | mysql.infoschema | Y | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | | | | | 0 | 0 | 0 | 0 | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | N | 2025-04-25 15:51:53 | NULL | Y | N | N | NULL | NULL | NULL | NULL | | ||
| 71 | | localhost | mysql.session | N | N | N | N | N | N | N | Y | N | N | N | N | N | N | N | Y | N | N | N | N | N | N | N | N | N | N | N | N | N | | | | | 0 | 0 | 0 | 0 | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | N | 2025-04-25 15:51:53 | NULL | Y | N | N | NULL | NULL | NULL | NULL | | ||
| 72 | | localhost | mysql.sys | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | | | | | 0 | 0 | 0 | 0 | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | N | 2025-04-25 15:51:53 | NULL | Y | N | N | NULL | NULL | NULL | NULL | | ||
| 73 | | localhost | root | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | | | | | 0 | 0 | 0 | 0 | caching_sha2_password | | N | 2025-04-25 15:51:53 | NULL | N | Y | Y | NULL | NULL | NULL | NULL | | ||
| 74 | +-----------+------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+------------------------------------------------------------------------+------------------+-----------------------+-------------------+----------------+------------------+----------------+------------------------+---------------------+--------------------------+-----------------+ | ||
| 75 | 5 rows in set (0.005 sec) | ||
| 76 | #+end_src | ||
databases/passwords/mysql/passwords.sql added +13
| @@ -0,0 +1,13 @@ | |||
| 1 | -- NOTE: Please review the server's "my.cnf" file for default values; | ||
| 2 | -- OR: run the "SHOW [GLOBAL | SESSION] VARIABLES" command(s) on the database. | ||
| 3 | |||
| 4 | -- Authentication methods only | ||
| 5 | SELECT user, host, plugin FROM mysql.user; | ||
| 6 | |||
| 7 | -- Default password configuration only | ||
| 8 | SHOW GLOBAL VARIABLES LIKE 'validate_password%'; | ||
| 9 | SHOW VARIABLES LIKE 'validate_password%'; | ||
| 10 | |||
| 11 | -- Authentication methods and MySQL password configurations | ||
| 12 | -- Reference: https://mariadb.com/kb/en/mysql-user-table/ | ||
| 13 | SELECT * FROM mysql.user | ||
databases/passwords/postgres/README.org added +31
| @@ -0,0 +1,31 @@ | |||
| 1 | #+title: Postgres Passwords | ||
| 2 | |||
| 3 | * =passwords.sql= | ||
| 4 | |||
| 5 | #+begin_src sql | ||
| 6 | SELECT * | ||
| 7 | FROM pg_settings | ||
| 8 | WHERE name LIKE 'password_%'; | ||
| 9 | #+end_src | ||
| 10 | |||
| 11 | #+begin_src | ||
| 12 | | name | setting | unit | category | short_desc | extra_desc | context | vartype | source | min_val | max_val | enumvals | boot_val | reset_val | sourcefile | sourceline | pending_restart | | ||
| 13 | |---------------------+---------------+------+-------------------------------------------------+-------------------------------------------------+------------+---------+---------+---------+---------+---------+---------------------+---------------+---------------+------------+------------+-----------------| | ||
| 14 | | password_encryption | scram-sha-256 | | Connections and Authentication / Authentication | Chooses the algorithm for encrypting passwords. | | user | enum | default | | | {md5,scram-sha-256} | scram-sha-256 | scram-sha-256 | | | false | | ||
| 15 | #+end_src | ||
| 16 | |||
| 17 | #+begin_src sql | ||
| 18 | SELECT | ||
| 19 | usename AS user_name, | ||
| 20 | passwd AS password, | ||
| 21 | valuntil AS valid_until, | ||
| 22 | useconfig AS user_config | ||
| 23 | FROM pg_shadow; | ||
| 24 | #+end_src | ||
| 25 | |||
| 26 | #+begin_src | ||
| 27 | | user_name | password | valid_until | user_config | | ||
| 28 | |-----------+---------------------------------------------------------------------------------------------------------------------------------------+------------------------+-------------| | ||
| 29 | | cmc | | | | | ||
| 30 | | testuser | SCRAM-SHA-256$4096:+NSpEU+8afhJ4BUTkzdKeg==$FGIRcTWr89b42qkLUl4Ntfp4RUpoc3GIpLHqJl/fWZE=:o1UM8YiEj5SLV5l/geMuqXMRi6onWazryn/l+LXYMxU= | 2025-12-31 00:00:00-06 | | | ||
| 31 | #+end_src | ||
databases/passwords/postgres/passwords.sql added +18
| @@ -0,0 +1,18 @@ | |||
| 1 | -- References: | ||
| 2 | -- : https://www.postgresql.org/docs/current/view-pg-shadow.html | ||
| 3 | -- : https://www.postgresql.org/docs/current/auth-password.html | ||
| 4 | -- : https://www.postgresql.org/docs/current/auth-password.html#AUTH-PASSWORD-ENCRYPTION | ||
| 5 | -- : https://www.postgresql.org/docs/current/runtime-config.html | ||
| 6 | |||
| 7 | -- Defined password configuration | ||
| 8 | SELECT * | ||
| 9 | FROM pg_settings | ||
| 10 | WHERE name LIKE 'password_%'; | ||
| 11 | |||
| 12 | -- Users and their password configurations | ||
| 13 | SELECT | ||
| 14 | usename AS user_name, | ||
| 15 | passwd AS password, | ||
| 16 | valuntil AS valid_until, | ||
| 17 | useconfig AS user_config | ||
| 18 | FROM pg_shadow;\ No newline at end of file | ||