Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

help to modify an script and change to powershell

Posted on 2013-11-07
11
Medium Priority
?
362 Views
Last Modified: 2013-11-08
Hello Experts,

I need your help you to convert an script that was written using AD quest shell commands to a power shell script.

This script was written a while back and the intent is to dynamic update the a distribution list name “Self-Service” with users in xxx domain that have extensionAttribute1 set to “Employee” or “Contractor”

Basically before running the script, I verified that John Doe account is not a member of the Self-Service DL.  When script is ran and completed, John Doe account is still not added to the DL Self-Service.


Self-service is a universal security group that exist in my domain

Any ideas?
0
Comment
Question by:Jerry Seinfield
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
11 Comments
 
LVL 44

Expert Comment

by:Rainer Jeschor
ID: 39632050
Hi,
did you want to attach/post the script? The script is missing.
Thanks.
Rainer
0
 

Author Comment

by:Jerry Seinfield
ID: 39632302
My bad

Attached is the script
SubscribeUserstoDL.txt
0
 
LVL 71

Expert Comment

by:Qlemo
ID: 39632367
Can we assume the ActiveDirectory  PS module is available (that is, we are on W2008R2+ domain)?
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 40

Expert Comment

by:Subsun
ID: 39632628
@febenitezc,  The script  which you posted is a PowerShell script and it uses Quest Active directory cmdlets.. I don't see any issue with script.. Are you getting any error while running the script? Did you check John Doe account and see if the extensionAttribute1 is set to Contractor or Employee?
0
 

Author Comment

by:Jerry Seinfield
ID: 39633427
Hi Subsun,

yes, the account has the extensionattribute1 set to Employee.

I ran the script from Windows powershell and got  the error below. The script runs fine from Active Role Management Shell, no errors, however the user is not added to the DL

Please see the 2 attached files

Is there a chance that you can write the script in power shell?

Can you please also add a comment that indicates the account was successfully added to the group?

Can you please export the results to a log file on c drive or any path?
ErrorRanFromPowerShellConsole.jpg
ResultsFromActiveRolesManagement.jpg
0
 

Author Comment

by:Jerry Seinfield
ID: 39633470
Guys,

we have another script that runs on another server but basically is a copy of first script, and runs OK.

Please see last attached script, the first script has a little difference in the lines below

$userArray = Get-QADUser -DontUseDefaultIncludedProperties -LDAPFilter "(&(objectCategory=person)(objectClass=user)(!userAccountControl:1.2.840.113556.1.4.803:=2)(|(extensionAttribute1=Contractor)(extensionAttribute1=Employee)))" -IncludedProperties name,dn,extensionAttribute1


$userArray = Get-QADUser -DontUseDefaultIncludedProperties -LDAPFilter "(&(objectCategory=person)(objectClass=user)(!userAccountControl:1.2.840.113556.1.4.803:=2)((extensionAttribute1=Employee)))" -IncludedProperties name,dn,extensionAttribute1


As you can see, the first script is calling both contractor and employee attributes, the second one only consider employee. but my issue is with the first script that is supposed to add the user to the DL and from active roles management server roles is not displaying any errors and is supposed to be OK
test.txt
0
 
LVL 40

Expert Comment

by:Subsun
ID: 39633483
The existing script will work. You just need to add -resultsize 0 Parameter to Get-Qadser in your code. currently The command process only 1000 result. that's the reason for this issue.
0
 

Author Comment

by:Jerry Seinfield
ID: 39633514
can you please paste the code with the updates?
0
 

Author Comment

by:Jerry Seinfield
ID: 39633518
with your recommendation, the account will be add to the DL?
0
 
LVL 40

Accepted Solution

by:
Subsun earned 2000 total points
ID: 39633611
Yes.. BTB parameter is sizelimit, resultsize is for microsoft commands
$userArray = Get-QADUser -sizelimit 0 -DontUseDefaultIncludedProperties -LDAPFilter "(&(objectCategory=person)(objectClass=user)(!userAccountControl:1.2.840.113556.1.4.803:=2)(|(extensionAttribute1=Contractor)(extensionAttribute1=Employee)))" -IncludedProperties name,dn,extensionAttribute1

Open in new window

0
 

Author Closing Comment

by:Jerry Seinfield
ID: 39633767
Thanks Subsun, you rock
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article will help you understand what HashTables are and how to use them in PowerShell.
This article explains how to prepare an HTML email signature template file containing dynamic placeholders for users' Azure AD data. Furthermore, it explains how to use this file to remotely set up a department-wide email signature policy in Office …
Exchange organizations may use the Journaling Agent of the Transport Service to archive messages going through Exchange. However, if the Transport Service is integrated with some email content management application (such as an antispam), the admini…
In this video, Percona Solutions Engineer Barrett Chambers discusses some of the basic syntax differences between MySQL and MongoDB. To learn more check out our webinar on MongoDB administration for MySQL DBA: https://www.percona.com/resources/we…

650 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question