以下是一个简单的 Python 脚本,可以将一个 AD 域控中的账号密码同步到另一个域控中:

import ldap

# 源 AD 域控连接信息
source_server = 'ldap://source.domain.com'
source_username = 'administrator@source.domain.com'
source_password = 'password'

# 目标 AD 域控连接信息
target_server = 'ldap://target.domain.com'
target_username = 'administrator@target.domain.com'
target_password = 'password'

# 源 AD 域控查询条件
source_base_dn = 'DC=source,DC=domain,DC=com'
source_filter = '(objectClass=user)'
source_attributes = ['sAMAccountName', 'userPassword']

# 目标 AD 域控修改条件
target_base_dn = 'DC=target,DC=domain,DC=com'

# 连接源 AD 域控
source_conn = ldap.initialize(source_server)
source_conn.simple_bind_s(source_username, source_password)

# 连接目标 AD 域控
target_conn = ldap.initialize(target_server)
target_conn.simple_bind_s(target_username, target_password)

# 查询源 AD 域控中的用户信息
result_id = source_conn.search(source_base_dn, ldap.SCOPE_SUBTREE, source_filter, source_attributes)
result_type, result_data = source_conn.result(result_id)

# 将用户信息同步到目标 AD 域控中
for dn, attrs in result_data:
    sAMAccountName = attrs['sAMAccountName'][0]
    userPassword = attrs['userPassword'][0]
    target_conn.modify_s(dn, [(ldap.MOD_REPLACE, 'userPassword', [userPassword])])

# 关闭连接
source_conn.unbind_s()
target_conn.unbind_s()

使用说明:

  1. 修改脚本中的源 AD 域控连接信息,包括源域控服务器地址、管理员用户名和密码;
  2. 修改脚本中的目标 AD 域控连接信息,包括目标域控服务器地址、管理员用户名和密码;
  3. 修改源 AD 域控查询条件,包括基础 DN、过滤条件和要查询的属性;
  4. 修改目标 AD 域控修改条件,包括基础 DN;
  5. 运行脚本,将源 AD 域控中的用户的域密码同步到目标 AD 域控中。

注意:

  • 该脚本只会将用户的域密码同步到目标 AD 域控中,不会同步其他属性信息。如果需要同步其他属性信息,需要修改脚本中的查询条件和修改条件。
  • 为了确保安全性,建议使用管理员账号来运行该脚本。
  • 在使用脚本之前,请确保已安装 ldap 库,可以使用 pip install ldap 命令安装。
Python 脚本同步 AD 域控账号密码 - 简单指南

原文地址: https://www.cveoy.top/t/topic/ogur 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录