• Python调用域控


    背景

    Python调用域控用来拿取用户信息。

    Windows10 添加ad域操作的功能

    设置-->应用和功能-->可选功能--->Active Directory 用户和计算机

    参考文档

    1. ##
    2. https://blog.csdn.net/weijiaxin2010/article/details/88880759
    3. ##
    4. https://blog.csdn.net/suo082407128/article/details/115294490

    Python调用代码

    (1)通过ssl方式

    1. from ldap3 import Server, Connection, ALL
    2. # host为域控服务器ip
    3. server = Server(host="xx-ad-02.xx.com",port=636,use_ssl=True, get_info=ALL)
    4. ## server = Server(host="xx",port=389,get_info=ALL,use_ssl=False)
    5. # user(如domain\Administrator)和 passwod为登录域控服务器的账户密码
    6. conn = Connection(server, 'knight.zhou@xx.com', 'xx', auto_bind=True)
    7. ## 查找对象
    8. # res = conn.search('dc=efsz,dc=com', '(objectclass=user)', attributes=['objectclass'])
    9. res = conn.search('dc=xx,dc=com', '(objectclass=user)', attributes=['objectclass'])
    10. # print(res) # search是否成功(True,False)
    11. # print(conn.result) # 查询失败的原因
    12. print(conn.entries) #查询到的数据
    13. # perform the Add operation
    14. # conn.add('cn=user1,ou=users,o=company', ['inetOrgPerson', 'posixGroup', 'top'], {'sn': 'user_sn', 'gidNumber': 0})

    (2)通过非SSL方式

    备注

    最近整python操作ad域,找到了python中有相应的第三方库ldap,分为两种模式:

    • 安全连接636端口和非安全连接389端口,
    • 非安全连接可以执行添加操作,但是添加的用户密码为空,如果需要修改密码需要在安全连接下,安全连接则需要导入证书。

    1. ## 原文参考
    2. https://www.cnblogs.com/huan-ch/p/16086626.html

    证书的种类

    通常情况下,作为文件形式存在的证书一般有三种格式:

    • 第一种:带有私钥的证书,由Public Key Cryptography Standards #12,PKCS#12标准定义,包含了公钥和私钥的二进制格式的证书形式,以.pfx作为证书文件后缀名。
    • 第二种:DER Encoded Binary (.cer)  二进制编码的证书,证书中没有私钥,DER 编码二进制格式的证书文件,以.cer作为证书文件后缀名。
    • 第三种:Base64 Encoded(.cer),Base64编码的证书,证书中没有私钥,BASE64 编码格式的证书文件,也是以.cer作为证书文件后缀名。

    由定义可以看出,只有pfx格式的数字证书是包含有私钥的,cer格式的数字证书里面只有公钥没有私钥

    参考

    1. ###
    2. https://www.freesion.com/article/10581137680/
    3. ### 生产pfx证书
    4. https://www.22.cn/help_369.html
    5. ## 到处pfx证书
    6. https://icode.best/i/04351347282047
    7. ##
    8. http://localnetwork.cn/project-4/doc-141/
    9. ###
    10. https://lework.github.io/2019/07/24/ad-install/

    启用ldaps参考

    1. ##
    2. https://blog.csdn.net/kaml200626/article/details/123237501

    Windows工具参考

    1. ###
    2. C:\Users\Administrator>ldp.exe

    启用LDAPS

    1. ###
    2. https://lework.github.io/2019/07/24/ad-install/
    3. ## 一定要连接域名
    4. ad-master-01.knight.com

  • 相关阅读:
    (二)Win10安装MindSpore平台“找不到指定的模块”问题解决
    dpkg工具、ZED相机sdk、监控nvidia
    微软正在研究使 Linux 脚本更安全
    Yii 结合MPDF 给PDF文件添加多行水印
    javascript正则表达式-模式和修饰符,字符类,词边界\b,转义特殊字符Unicode修饰符u和类\p{..}字符串开始和结尾,
    Windows上运行Redis
    云计算正当时!将你的Java项目容器化
    Project Office X for Mac项目管理工具
    火焰图:链路追踪分析的可视化利器
    【Python】《Python编程:从入门到实践 (第2版) 》笔记-Chapter4-操作列表
  • 原文地址:https://blog.csdn.net/knight_zhou/article/details/126573973