File: //opt/saltstack/salt/lib/python3.10/site-packages/salt/auth/__pycache__/ldap.cpython-310.pyc
o
�N�g}Y � @ sH d Z ddlZddlZddlmZ ddlZddlZddlm Z m
Z
e�e�Z
zddlZddlZddlZdZW n ey@ dZY nw i dd�d d�d
d�dd
�dd�dd�dd�dd�dd�dd�dd�dd�dd�dd�dd�dd�d g �Zd3d!d"�Zd#d$� ZG d%d&� d&�Zd4d'd(�Zd4d)d*�Zd+d,� Zd-d.� Zd5d/d0�Zd5d1d2�ZdS )6zR
Provide authentication using simple LDAP binds
:depends: - ldap Python module
� N)�Environment)�CommandExecutionError�SaltInvocationErrorTFzauth.ldap.basedn� z
auth.ldap.urizauth.ldap.serverZ localhostzauth.ldap.portZ389zauth.ldap.starttlsz
auth.ldap.tlszauth.ldap.no_verifyzauth.ldap.anonymouszauth.ldap.scope� zauth.ldap.groupouZGroupszauth.ldap.accountattributenameZ memberUidzauth.ldap.groupattributeZmemberOfzauth.ldap.persontypeZpersonzauth.ldap.groupclassZ
posixGroupzauth.ldap.activedirectoryzauth.ldap.freeipa�auth.ldap.minion_stripdomainsc C s� z|r
|d| � � }W |S t d| � � }W |S ty@ ztd| � � }W Y |S ty? |r;d| � d�}t|��Y Y dS w w )zP
Return a value for 'name' from master config file options or defaults.
z
auth.ldap.zmissing auth.ldap.z in master configF)Z__opts__�KeyError�__defopts__r )�key� mandatory�opts�value�msg� r �B/opt/saltstack/salt/lib/python3.10/site-packages/salt/auth/ldap.py�_config3 s"