2009-08-05 6 views

Antwort

6

der einzige Weg, dies zu tun ist cflap zu verwenden und abfragen, um den Active Directory-Server eine Liste der Gruppen zu erhalten. Nachdem Sie die Liste erhalten haben, müssen Sie sie analysieren, um zu sehen, ob dieser Benutzer zu der fraglichen Gruppe gehört. Unten ist ein Code, den ich mit einigen Kommentaren für die Leute bei der Arbeit geschrieben habe. Werte wurden geändert, um Unschuldige zu schützen.

<!--- getting the user login id ---> 
<cfset variables.thisuser = ListLast(cgi.AUTH_USER, "\")> 
<!--- this is the group they must be a memberof ---> 
<cfset variables.groupname = "CN=<the group to search for>"> 
<!--- list of all groups that the user belongs to, will be populated later ---> 
<cfset variables.grouplist = ""> 

<cftry> 
    <cfldap action="query" 
     name="myldap" 
     attributes="memberOf" 
     start="OU=<your ou>,DC=<your dc>,DC=<your dc>" 
     scope="subtree" 
     filter="(sAMAccountName=#variables.thisuser#)" 
     server="<your AD server ip>" 
     port="<your AD server port>" 
     username="<network login if required>" 
     password="<network password if required>"> 

    <cfset variables.grouplist = myldap.memberOf> 

<cfcatch> 
    </cfcatch> 
</cftry> 

<cfif FindNoCase(variables.groupname, variables.grouplist)> 

    <cfcookie name="SecurityCookieName" value=""> 

</cfif> 
1

in Coldfusion durchgeführt werden, um eine Benutzer Rolle überprüfen Sie IsUserInRole()

verwenden würden,

http://cfquickdocs.com/#IsUserInRole

Bearbeiten - Und eigentlich hoffe ich, dass ich richtig verstanden habe, weiß ich nichts über IIS oder Active Directory. Wie ich die Frage verstanden habe, wollten Sie eine Benutzerrolle in Coldfusion überprüfen.

Ich glaube, Sie nach etwas suchen, werden mehr wie folgt aus: http://vincentcollins.wordpress.com/2008/08/20/active-directory-ldap-authentication/ oder dies: http://coldfusion.sys-con.com/node/154225

1

So wie ein Follow-up, SQL Server verfügt über ADSI-Anbieter, mit denen Sie einen verknüpften Server zu Ihrem LDAP-Server erstellen.

Von dort können Sie ldap Abfragen zu Ihrem AD und es kehrt wie jeder andere Datensatz zurück.

Ich finde es etwas einfacher, komplexe ldap Abfrage dann über CF.

Verwandte Themen