Hello All,
I am developing an intranet application. We are going to use AD for that. I want to find out "logon" name and based on that I want to capture "department " attribute from a "nj-g-trustbranch" CN from AD.
On active directory path shown as :
CN=nj-g-trustbranch,OU= Global group,OU=securi ty group,OU=new jersey, DC=nj, DC=tri,DC=xxx
I have two part question
(1) I am using Following code to get user information but it is not giving me my logon id.
using System;
using System.Collecti ons.Generic;
using System.Text;
using System.Director yServices;
using Storer.ActiveDi rectory;
namespace ActiveDirectory
{
class Program
{
static void Main(string[] args)
{
User _user = Search.ForUser( User.Properties .SAMACCOUNTNAME , "Administrator" );
Console.WriteLi ne("UserName =" + _user.SAMAccoun tName);
Console.WriteLi ne("Full Display Name =" + _user.FullDispl ayName);
Console.WriteLi ne("Full Name =" + _user.FullName) ;
Console.WriteLi ne("First Name =" + _user.FirstName );
Console.WriteLi ne("Member Of =" + _user.MemberOf) ;
Console.WriteLi ne("Distinguish edName =" + _user.Distingui shedName);
Console.WriteLi ne("TokenGroup s =" + _user.TokenGrou ps);
Console.WriteLi ne("ObjectSIDSt ring =" + _user.ObjectSID String);
}
(2) I am trying to get attribute from AD but it comes with "There is no such subject on the server"
using System;
using System.Collecti ons.Generic;
using System.Text;
using System.Director yServices;
using Storer.ActiveDi rectory;
namespace ActiveDirectory
{
class Program
{
static void Main(string[] args)
{
DirectoryEntry entry = new DirectoryEntry( "LDAP://nj-nrt-dc1.nj.tri.xxx/CN=nj-g-trust,CN=global Groups,CN=secur ity Groups,CN=new jersey,DC=nj,DC =tri,DC=xxx");
DirectorySearch er dSearch = new DirectorySearch er(entry);
string name = "shah";
dSearch.Filter = "(&(objectClass =user)(sn=" + name + "))";
if (dSearch.Filter != null)
{
foreach (SearchResult sResultSet in dSearch.FindAll ())
{
// Login Name
Console.WriteLi ne("CN ="+ GetProperty(sRe sultSet, "cn"));
Console.WriteLi ne();
// First Name
Console.WriteLi ne("Given Name ="+GetProperty( sResultSet, "givenName" ));
// Middle Initials
Console.WriteLi ne();
Console.Write(" Initial ="+GetProperty( sResultSet, "initials") );
// Last Name
Console.WriteLi ne();
Console.Write(" SN ="+GetProperty( sResultSet, "sn"));
// Address
Console.WriteLi ne();
string tempAddress = GetProperty(sRe sultSet, "homePostalAddr ess");
Console.WriteLi ne();
}
What I am doing wrong???
Thanks for your help.
HShah
I am developing an intranet application. We are going to use AD for that. I want to find out "logon" name and based on that I want to capture "department " attribute from a "nj-g-trustbranch" CN from AD.
On active directory path shown as :
CN=nj-g-trustbranch,OU= Global group,OU=securi ty group,OU=new jersey, DC=nj, DC=tri,DC=xxx
I have two part question
(1) I am using Following code to get user information but it is not giving me my logon id.
using System;
using System.Collecti ons.Generic;
using System.Text;
using System.Director yServices;
using Storer.ActiveDi rectory;
namespace ActiveDirectory
{
class Program
{
static void Main(string[] args)
{
User _user = Search.ForUser( User.Properties .SAMACCOUNTNAME , "Administrator" );
Console.WriteLi ne("UserName =" + _user.SAMAccoun tName);
Console.WriteLi ne("Full Display Name =" + _user.FullDispl ayName);
Console.WriteLi ne("Full Name =" + _user.FullName) ;
Console.WriteLi ne("First Name =" + _user.FirstName );
Console.WriteLi ne("Member Of =" + _user.MemberOf) ;
Console.WriteLi ne("Distinguish edName =" + _user.Distingui shedName);
Console.WriteLi ne("TokenGroup s =" + _user.TokenGrou ps);
Console.WriteLi ne("ObjectSIDSt ring =" + _user.ObjectSID String);
}
(2) I am trying to get attribute from AD but it comes with "There is no such subject on the server"
using System;
using System.Collecti ons.Generic;
using System.Text;
using System.Director yServices;
using Storer.ActiveDi rectory;
namespace ActiveDirectory
{
class Program
{
static void Main(string[] args)
{
DirectoryEntry entry = new DirectoryEntry( "LDAP://nj-nrt-dc1.nj.tri.xxx/CN=nj-g-trust,CN=global Groups,CN=secur ity Groups,CN=new jersey,DC=nj,DC =tri,DC=xxx");
DirectorySearch er dSearch = new DirectorySearch er(entry);
string name = "shah";
dSearch.Filter = "(&(objectClass =user)(sn=" + name + "))";
if (dSearch.Filter != null)
{
foreach (SearchResult sResultSet in dSearch.FindAll ())
{
// Login Name
Console.WriteLi ne("CN ="+ GetProperty(sRe sultSet, "cn"));
Console.WriteLi ne();
// First Name
Console.WriteLi ne("Given Name ="+GetProperty( sResultSet, "givenName" ));
// Middle Initials
Console.WriteLi ne();
Console.Write(" Initial ="+GetProperty( sResultSet, "initials") );
// Last Name
Console.WriteLi ne();
Console.Write(" SN ="+GetProperty( sResultSet, "sn"));
// Address
Console.WriteLi ne();
string tempAddress = GetProperty(sRe sultSet, "homePostalAddr ess");
Console.WriteLi ne();
}
What I am doing wrong???
Thanks for your help.
HShah