Код: Выделить всё
from ldap3 import Server, Connection, SUBTREE, ALL, Tls, MODIFY_REPLACE
from fastapi import FastAPI
from typing import Union
from pydantic import BaseModel
import ssl
app = FastAPI()
tls_configuration = Tls(validate=ssl.CERT_REQUIRED,version=ssl.PROTOCOL_TLSv1_2,ca_certs_file="./app/client_cert.pem")
server = Server("ldaps://ldaps.adserver.com",port=636,use_ssl=True,tls=tls_configuration, get_info=ALL)
conn = Connection(server, user='mydomain.com\user', password='DemoPass%',auto_bind=True,authentication="NTLM")
print(f"Connection: {conn}")
Код: Выделить всё
openssl s_client -connect ldaps.adserver.com:636
Код: Выделить всё
Traceback (most recent call last):
File "/Users/demo/Documents/GitHub/project/app/main.py", line 13, in
conn = Connection(server, user='domain\user', password='DemoPass%',auto_bind=True,authentication="NTLM")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/demo/anaconda3/lib/python3.11/site-packages/ldap3/core/connection.py", line 363, in __init__
self._do_auto_bind()
File "/Users/demo/anaconda3/lib/python3.11/site-packages/ldap3/core/connection.py", line 387, in _do_auto_bind
self.open(read_server_info=False)
File "/Users/demo/anaconda3/lib/python3.11/site-packages/ldap3/strategy/sync.py", line 57, in open
BaseStrategy.open(self, reset_usage, read_server_info)
File "/Users/demo/anaconda3/lib/python3.11/site-packages/ldap3/strategy/base.py", line 146, in open
raise exception_history[0][0]
ldap3.core.exceptions.LDAPSocketOpenError: ("('socket ssl wrapping error: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1006)',)",)
Подробнее здесь: https://stackoverflow.com/questions/781 ... ify-failed