Active Directory/Connect: Difference between revisions
(omitting from Yorick; consolidating {{omit from}} calls at bottom) |
|||
Line 2: | Line 2: | ||
[[description::requires improvement| ]] |
[[description::requires improvement| ]] |
||
[[Category:Less_Than_5_Examples]] |
[[Category:Less_Than_5_Examples]] |
||
⚫ | |||
=={{header|Perl}}== |
=={{header|Perl}}== |
||
Line 62: | Line 60: | ||
objConn.Open</lang> |
objConn.Open</lang> |
||
⚫ | |||
{{omit from|TI-89 BASIC}} <!-- Does not have network access. --> |
{{omit from|TI-89 BASIC}} <!-- Does not have network access. --> |
||
{{omit from|Active Directory}} |
{{omit from|Active Directory}} |
||
{{omit from|MIPS Assembly|None of the commonly used implementations can access AD functions}} |
{{omit from|MIPS Assembly|None of the commonly used implementations can access AD functions}} |
||
{{omit from|Yorick|Does not have network access.}} |
|||
[[Category:Active Directory]] |
[[Category:Active Directory]] |
Revision as of 05:31, 17 October 2010
You are encouraged to solve this task according to the task description, using any language you may know.
Perl
LDAP Modules <lang perl> use Net::LDAP;
my $ldap = Net::LDAP->new('ldap://ldap.example.com') or die $@; my $mesg = $ldap->bind( $bind_dn, password => $bind_pass ); </lang>
PHP
PHP LDAP Reference <lang php><?php $ldap = ldap_connect($hostname, $port); $success = ldap_bind($ldap, $username, $password);</lang>
Python
<lang python>import ldap
l = ldap.initialize("ldap://ldap.example.com") try:
l.protocol_version = ldap.VERSION3 l.set_option(ldap.OPT_REFERRALS, 0)
bind = l.simple_bind_s("me@example.com", "password")
finally:
l.unbind()
</lang>
Ruby
Similar to Tcl, assume the AD server talks LDAP.
There are many Ruby LDAP packages ([1]) -- this solution uses Net::LDAP ("Pure Ruby LDAP Tools" on RubyForge, gem name "ruby-net-ldap")
<lang ruby>require 'rubygems' require 'net/ldap' ldap = Net::LDAP.new(:host => 'ldap.example.com', :base => 'o=companyname') ldap.authenticate('bind_dn', 'bind_pass')</lang>
Tcl
This does not use SSPI/Kerberos yet, so your AD would need to allow simple ldap access. <lang tcl>package require ldap set conn [ldap::connect $host $port] ldap::bind $conn $user $password</lang>
VBScript
Creating the normal connection to AD <lang vbscript>Set objConn = CreateObject("ADODB.Connection") Set objCmd = CreateObject("ADODB.Command") objConn.Provider = "ADsDSOObject" objConn.Open</lang>