File manager - Edit - /opt/saltstack/salt/lib/python3.10/site-packages/salt/auth/__pycache__/mysql.cpython-310.pyc
Back
o ;j2 � @ s� d Z ddlZe�e�ZzddlZddlZddlZddlm Z W n1 e yP zddlZe�� ddlZddlZddlZddl m Z W n e yM dZY nw Y nw dd� Zdd� Zdd � ZdS ) a Provide authentication using MySQL. When using MySQL as an authentication backend, you will need to create or use an existing table that has a username and a password column. To get started, create a simple table that holds just a username and a password. The password field will hold a SHA256 checksum. .. code-block:: sql CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(25) DEFAULT NULL, `password` varchar(70) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; To create a user within MySQL, execute the following statement. .. code-block:: sql INSERT INTO users VALUES (NULL, 'diana', SHA2('secret', 256)) .. code-block:: yaml mysql_auth: hostname: localhost database: SaltStack username: root password: letmein auth_sql: 'SELECT username FROM users WHERE username = "{0}" AND password = SHA2("{1}", 256)' The `auth_sql` contains the SQL that will validate a user to ensure they are correctly authenticated. This is where you can specify other SQL queries to authenticate users. Enable MySQL authentication. .. code-block:: yaml external_auth: mysql: damian: - test.* :depends: - MySQL-python Python module � N)�OperationalErrorc C s t t�tdu r dfS dfS )z: Confirm that a python mysql client is installed. Nz!No python mysql client installed.� )�bool�MySQLdb� r r �C/opt/saltstack/salt/lib/python3.10/site-packages/salt/auth/mysql.py�__virtual__J s r c C s� i } z+t d d | d<