ColdFusion - 连接到 LDAP 服务器
ColdFusion - Connect to LDAP Server
我正在使用 cfldap
(ColdFusion 2016) 连接到 LDAP 服务器,但服务器以 [=12=] 开头。 ColdFusion 抛出一个错误,指出它是一个无效的名称。当我尝试在没有 LDAPS
的情况下进行连接时,它会抛出“执行查询时发生错误。下面是我正在使用的完整标记。
<cftry>
<cfldap server="#servername#"
username="#username#"
password="#password#"
port="636" action="query"
name="qryName"
start="#start#"
attributes="#attributes#"
filter="#filter#"
scope="SUBTREE"
secure="cfssl_basic">
<cfcatch type="any">
<cfdump var="#cfcatch#">
</cfcatch>
</cftry>
有什么遗漏吗?
#start# 后缺少双引号。不过不确定这是否在您的实际代码中。
您可能需要将 ldap 服务器的证书导入 java 密钥库,或者如果是 Active Directory,则将域的 CA 证书导入。
https://helpx.adobe.com/coldfusion/kb/import-certificates-certificate-stores-coldfusion.html
另外,这里有一个示例 os 通过 Active Directory 进行身份验证。
cfldap(
server = "ServerName",
port = 636,
action = "QUERY",
name = "qLDAPLookup",
secure = "CFSSL_BASIC",
username = "MYDOMAIN\#arguments.username#",
password = arguments.password,
start = "dc=MYDOMAIN,dc=MYTLD",
attributes = "cn,userPrincipalName,title,mail",
timeout = "10",
filter = "(sAMAccountName=#arguments.username#)"
);
if (qLDAPLookup.recordCount) {
userAuthenticated = true;
}
我正在使用 cfldap
(ColdFusion 2016) 连接到 LDAP 服务器,但服务器以 [=12=] 开头。 ColdFusion 抛出一个错误,指出它是一个无效的名称。当我尝试在没有 LDAPS
的情况下进行连接时,它会抛出“执行查询时发生错误。下面是我正在使用的完整标记。
<cftry>
<cfldap server="#servername#"
username="#username#"
password="#password#"
port="636" action="query"
name="qryName"
start="#start#"
attributes="#attributes#"
filter="#filter#"
scope="SUBTREE"
secure="cfssl_basic">
<cfcatch type="any">
<cfdump var="#cfcatch#">
</cfcatch>
</cftry>
有什么遗漏吗?
#start# 后缺少双引号。不过不确定这是否在您的实际代码中。
您可能需要将 ldap 服务器的证书导入 java 密钥库,或者如果是 Active Directory,则将域的 CA 证书导入。
https://helpx.adobe.com/coldfusion/kb/import-certificates-certificate-stores-coldfusion.html
另外,这里有一个示例 os 通过 Active Directory 进行身份验证。
cfldap(
server = "ServerName",
port = 636,
action = "QUERY",
name = "qLDAPLookup",
secure = "CFSSL_BASIC",
username = "MYDOMAIN\#arguments.username#",
password = arguments.password,
start = "dc=MYDOMAIN,dc=MYTLD",
attributes = "cn,userPrincipalName,title,mail",
timeout = "10",
filter = "(sAMAccountName=#arguments.username#)"
);
if (qLDAPLookup.recordCount) {
userAuthenticated = true;
}