Checking for NT Domain Group Membership 
Author Message
 Checking for NT Domain Group Membership

I'm writing a login script in which I want to check for NT domain group
membership.  So far, I haven't found a simple way to do this.  Could
someone help?  Thanks in advance.

Sent via Deja.com http://www.*-*-*.com/
Before you buy.



Sat, 13 Apr 2002 03:00:00 GMT  
 Checking for NT Domain Group Membership
Use ADSI.

Cheers,

Nick.

Quote:
-----Original Message-----

Posted At: 26 October 1999 03:11
Posted To: microsoft.public.scripting.wsh
Conversation: Checking for NT Domain Group Membership
Subject: Checking for NT Domain Group Membership

I'm writing a login script in which I want to check for NT domain group
membership.  So far, I haven't found a simple way to do this.  Could
someone help?  Thanks in advance.

Sent via Deja.com http://www.deja.com/
Before you buy.



Sat, 13 Apr 2002 03:00:00 GMT  
 Checking for NT Domain Group Membership
If you install ADSI on every workstation you can use the following code in
your logon script...

adsPath = "WinNT://" & strDomain & "/" & strUser
set adsObj = GetObject(adsPath)
For Each Prop In adsobj.groups
  Select Case Prop.Name
   Case "Domain Admins"
    Call Administrators()
   Case "Group1"
    Call Group1()
   Case "Group2"
    Call Group2()
   'etc
  End Select
Next 'Prop

Regards,
Ian
WSH FAQ http://wsh.glazier.co.nz



Quote:
> Use ADSI.

> Cheers,

> Nick.

> -----Original Message-----

> Posted At: 26 October 1999 03:11
> Posted To: microsoft.public.scripting.wsh
> Conversation: Checking for NT Domain Group Membership
> Subject: Checking for NT Domain Group Membership

> I'm writing a login script in which I want to check for NT domain group
> membership.  So far, I haven't found a simple way to do this.  Could
> someone help?  Thanks in advance.

> Sent via Deja.com http://www.deja.com/
> Before you buy.



Sun, 14 Apr 2002 03:00:00 GMT  
 Checking for NT Domain Group Membership

be careful... use of the IsMember function can be EXTREMELY slooooow....

Clarence

--
http://cwashington.netreach.net

On THIS site you will find everything you need to get up and running. A
script repository with over 300 FREE sample scripts, a downloads section
with FREE COM objects for scripting, a library of reference materials and a
online discussion lounge to provide community based technical support. Check
it out.

Quote:

> Thank you for your response which indicates a technique I hadn't thought
> of.  After some research, I had come up with a different approach which
> also uses ADSI:

>  grp = GetObject("WinNT://domain/groupname");
>  if ( grp.IsMember("WinNT://domain/username") ) {...}

> Regards,

> Blake



> > If you install ADSI on every workstation you can use the following
> code in
> > your logon script...

> > adsPath = "WinNT://" & strDomain & "/" & strUser
> > set adsObj = GetObject(adsPath)
> > For Each Prop In adsobj.groups
> >   Select Case Prop.Name
> >    Case "Domain Admins"
> >     Call Administrators()
> >    Case "Group1"
> >     Call Group1()
> >    Case "Group2"
> >     Call Group2()
> >    'etc
> >   End Select
> > Next 'Prop

> > Regards,
> > Ian
> > WSH FAQ http://wsh.glazier.co.nz



> > > Use ADSI.

> > > Cheers,

> > > Nick.

> > > -----Original Message-----

> > > Posted At: 26 October 1999 03:11
> > > Posted To: microsoft.public.scripting.wsh
> > > Conversation: Checking for NT Domain Group Membership
> > > Subject: Checking for NT Domain Group Membership

> > > I'm writing a login script in which I want to check for NT domain
> group
> > > membership.  So far, I haven't found a simple way to do this.  Could
> > > someone help?  Thanks in advance.

> > > Sent via Deja.com http://www.deja.com/
> > > Before you buy.

> Sent via Deja.com http://www.deja.com/
> Before you buy.



Sun, 14 Apr 2002 03:00:00 GMT  
 Checking for NT Domain Group Membership
Thank you for your response which indicates a technique I hadn't thought
of.  After some research, I had come up with a different approach which
also uses ADSI:

 grp = GetObject("WinNT://domain/groupname");
 if ( grp.IsMember("WinNT://domain/username") ) {...}

Regards,

Blake



Quote:
> If you install ADSI on every workstation you can use the following
code in
> your logon script...

> adsPath = "WinNT://" & strDomain & "/" & strUser
> set adsObj = GetObject(adsPath)
> For Each Prop In adsobj.groups
>   Select Case Prop.Name
>    Case "Domain Admins"
>     Call Administrators()
>    Case "Group1"
>     Call Group1()
>    Case "Group2"
>     Call Group2()
>    'etc
>   End Select
> Next 'Prop

> Regards,
> Ian
> WSH FAQ http://wsh.glazier.co.nz



> > Use ADSI.

> > Cheers,

> > Nick.

> > -----Original Message-----

> > Posted At: 26 October 1999 03:11
> > Posted To: microsoft.public.scripting.wsh
> > Conversation: Checking for NT Domain Group Membership
> > Subject: Checking for NT Domain Group Membership

> > I'm writing a login script in which I want to check for NT domain
group
> > membership.  So far, I haven't found a simple way to do this.  Could
> > someone help?  Thanks in advance.

> > Sent via Deja.com http://www.deja.com/
> > Before you buy.

Sent via Deja.com http://www.deja.com/
Before you buy.


Mon, 15 Apr 2002 03:00:00 GMT  
 Checking for NT Domain Group Membership
How have you found the performance of IsMember?
With ADSI 2.1 it was VERY slow.

Regards,
Ian
WSH FAQ http://wsh.glazier.co.nz


Quote:
> Thank you for your response which indicates a technique I hadn't thought
> of.  After some research, I had come up with a different approach which
> also uses ADSI:

>  grp = GetObject("WinNT://domain/groupname");
>  if ( grp.IsMember("WinNT://domain/username") ) {...}

> Regards,

> Blake



> > If you install ADSI on every workstation you can use the following
> code in
> > your logon script...

> > adsPath = "WinNT://" & strDomain & "/" & strUser
> > set adsObj = GetObject(adsPath)
> > For Each Prop In adsobj.groups
> >   Select Case Prop.Name
> >    Case "Domain Admins"
> >     Call Administrators()
> >    Case "Group1"
> >     Call Group1()
> >    Case "Group2"
> >     Call Group2()
> >    'etc
> >   End Select
> > Next 'Prop

> > Regards,
> > Ian
> > WSH FAQ http://wsh.glazier.co.nz



> > > Use ADSI.

> > > Cheers,

> > > Nick.

> > > -----Original Message-----

> > > Posted At: 26 October 1999 03:11
> > > Posted To: microsoft.public.scripting.wsh
> > > Conversation: Checking for NT Domain Group Membership
> > > Subject: Checking for NT Domain Group Membership

> > > I'm writing a login script in which I want to check for NT domain
> group
> > > membership.  So far, I haven't found a simple way to do this.  Could
> > > someone help?  Thanks in advance.

> > > Sent via Deja.com http://www.deja.com/
> > > Before you buy.

> Sent via Deja.com http://www.deja.com/
> Before you buy.



Mon, 15 Apr 2002 03:00:00 GMT  
 Checking for NT Domain Group Membership
I haven't noticed any performance problems, although I haven't put my
code into production yet.

I'm going to try rewriting the login script using GetObject(adsPath).
Looking over your sample code, it seems like a waste for me to
repeadedly call IsMember for every group I want to check when instead I
can do a single GetObject(adsPath) followed by the case block as you
suggested.

Thanks for your help!

--Blake



Quote:
> How have you found the performance of IsMember?
> With ADSI 2.1 it was VERY slow.

> Regards,
> Ian
> WSH FAQ http://wsh.glazier.co.nz



> > Thank you for your response which indicates a technique I hadn't
thought
> > of.  After some research, I had come up with a different approach
which
> > also uses ADSI:

> >  grp = GetObject("WinNT://domain/groupname");
> >  if ( grp.IsMember("WinNT://domain/username") ) {...}

> > Regards,

> > Blake



> > > If you install ADSI on every workstation you can use the
following
> > code in
> > > your logon script...

> > > adsPath = "WinNT://" & strDomain & "/" & strUser
> > > set adsObj = GetObject(adsPath)
> > > For Each Prop In adsobj.groups
> > >   Select Case Prop.Name
> > >    Case "Domain Admins"
> > >     Call Administrators()
> > >    Case "Group1"
> > >     Call Group1()
> > >    Case "Group2"
> > >     Call Group2()
> > >    'etc
> > >   End Select
> > > Next 'Prop

> > > Regards,
> > > Ian
> > > WSH FAQ http://wsh.glazier.co.nz




- Show quoted text -

Quote:
> > > > Use ADSI.

> > > > Cheers,

> > > > Nick.

> > > > -----Original Message-----

> > > > Posted At: 26 October 1999 03:11
> > > > Posted To: microsoft.public.scripting.wsh
> > > > Conversation: Checking for NT Domain Group Membership
> > > > Subject: Checking for NT Domain Group Membership

> > > > I'm writing a login script in which I want to check for NT
domain
> > group
> > > > membership.  So far, I haven't found a simple way to do this.
Could
> > > > someone help?  Thanks in advance.

> > > > Sent via Deja.com http://www.deja.com/
> > > > Before you buy.

> > Sent via Deja.com http://www.deja.com/
> > Before you buy.

Sent via Deja.com http://www.deja.com/
Before you buy.


Mon, 15 Apr 2002 03:00:00 GMT  
 Checking for NT Domain Group Membership
Hi Ian,

I have been unable to get your code translated to jscript.  Looking
over past posts to the jscript newsgroup, it seems I'm not the only one
struggling with this problem.  Translating "Prop In adsobj.groups" or
"Prop In adsobj.groups()" to jscript just doesn't work for me.

Anyway, what do you think of the following as an alternative?  Would
there likely be any performance problems as compared to IsMember?

var ADsPath = "WinNT://domain/username";
var userobj = GetObject(ADsPath);
for(var e=new Enumerator(userobj.Groups()); !e.atEnd(); e.moveNext())
{
    var group = e.item();
    switch (group.Name)
    {                   // *********** Edit Below this point
*****************
        case 'IT':
        // etc....

--Blake



Quote:
> How have you found the performance of IsMember?
> With ADSI 2.1 it was VERY slow.

> Regards,
> Ian
> WSH FAQ http://wsh.glazier.co.nz



> > Thank you for your response which indicates a technique I hadn't
thought
> > of.  After some research, I had come up with a different approach
which
> > also uses ADSI:

> >  grp = GetObject("WinNT://domain/groupname");
> >  if ( grp.IsMember("WinNT://domain/username") ) {...}

> > Regards,

> > Blake



> > > If you install ADSI on every workstation you can use the
following
> > code in
> > > your logon script...

> > > adsPath = "WinNT://" & strDomain & "/" & strUser
> > > set adsObj = GetObject(adsPath)
> > > For Each Prop In adsobj.groups
> > >   Select Case Prop.Name
> > >    Case "Domain Admins"
> > >     Call Administrators()
> > >    Case "Group1"
> > >     Call Group1()
> > >    Case "Group2"
> > >     Call Group2()
> > >    'etc
> > >   End Select
> > > Next 'Prop

> > > Regards,
> > > Ian
> > > WSH FAQ http://wsh.glazier.co.nz




- Show quoted text -

Quote:
> > > > Use ADSI.

> > > > Cheers,

> > > > Nick.

> > > > -----Original Message-----

> > > > Posted At: 26 October 1999 03:11
> > > > Posted To: microsoft.public.scripting.wsh
> > > > Conversation: Checking for NT Domain Group Membership
> > > > Subject: Checking for NT Domain Group Membership

> > > > I'm writing a login script in which I want to check for NT
domain
> > group
> > > > membership.  So far, I haven't found a simple way to do this.
Could
> > > > someone help?  Thanks in advance.

> > > > Sent via Deja.com http://www.deja.com/
> > > > Before you buy.

> > Sent via Deja.com http://www.deja.com/
> > Before you buy.

Sent via Deja.com http://www.deja.com/
Before you buy.


Mon, 15 Apr 2002 03:00:00 GMT  
 
 [ 8 post ] 

 Relevant Pages 

1. How to check group membership in non trusted domain

2. VBScript NT Login Script - checking for group membership

3. error when checking for NT group membership

4. Checking NT Group Membership

5. Checking NT Group Membership

6. Speed up finding group membership in Resourc domain (NT4)

7. Checking Group Membership for a Computer

8. Checking for Group membership

9. Checking group membership

10. checking group membership like IFMEMBER

11. Checking Group Memberships

12. Checking for Group membership not working?

 

 
Powered by phpBB® Forum Software