gpt4 book ai didi

vbscript - 使用备用凭据通过 VBscript 保护 LDAP 对象操作

转载 作者:行者123 更新时间:2023-12-04 12:13:45 26 4
gpt4 key购买 nike

我知道使用带有显式凭据的 ADsDSOobject 连接到 AD 对象以读取属性、列出成员等。以及用于操作这些对象(添加组成员、更改属性)的 GetObject("LDAP//...") 方法等),但是有没有办法使用显式凭据来操作属性和成员资格?

我所指的第一种方法类似于...

Set conn = Server.CreateObject("ADODB.Connection")
Set cmd = Server.CreateObject("ADODB.Command")
conn.Provider = "ADsDSOobject"
conn.Properties("User ID") = AD_Username
conn.Properties("Password") = AD_Password
conn.Properties("Encrypt Password") = True
conn.Open "Active Directory Provider"
Set cmd.ActiveConnection = conn

但据我所知,执行将用户添加到域组等任务的脚本示例都不能使用这种方法。有没有办法以某种方式做到这一点?

最佳答案

在 VBScript 中,您经常使用 ADSI 将用户添加到组。这是将用户添加到域组的示例代码

Set objUser = GetObject("LDAP://CN=jeffsmith,DC=fabrikam,DC=com")
Set objGroup = GetObject("LDAP://CN=group1,DC=fabrikam,DC=com")
objGroup.add(objUser.ADsPath)

它工作正常,但它始终使用您当前的用户凭据。因为 GetObject不允许您指定备用凭据。

要指定另一个凭据,您需要替换 GetObject来自 OpenDSObject
Const ADS_SECURE_AUTHENTICATION = 1
Set openDS = GetObject("LDAP:")

Set objUser = openDS.OpenDSObject("LDAP://CN=jeffsmith,DC=fabrikam,DC=com",
"username",
"password",
ADS_SECURE_AUTHENTICATION)

Set objGroup = openDS.OpenDSObject("LDAP://CN=group1,DC=fabrikam,DC=com",
"username",
"password",
ADS_SECURE_AUTHENTICATION)

objGroup.add(objUser.ADsPath)

关于vbscript - 使用备用凭据通过 VBscript 保护 LDAP 对象操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5285247/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com