Monday, March 26, 2018

Update Group Membership – PowerShell Script


If you have multiple domains or performing a user or group migration, you may need to manually update (depend on your scenario) the source or target group membership.  This script can be used to update group membership based on source user’s group membership.  The input for this script the user name (sAMAccountName) and it assumes that the source and target sAMAccountName are the same. 
Input file (Users.csv) Format:















Script validates users in the source domain and collect “memberof” details and then add the target user (migrated user) to the same group. At the end of the operation, the source user and the target user (migrated user) will be part of same security group in the source domain. 
You can see some other “Update Group Membership” script here - http://portal.sivarajan.com/2014/01/update-group-membershippowershell-script.html
Script:
#
# Update Group Membership
# Santhosh Sivarajan (Santhosh@Sivarajan.Com)
#
Clear
Import-Module ActiveDirectory
$userN = ""
$GroupDetails = ""
$Group = ""
$GroupsDN = ""
$uValidation = ""
$tagetDomain = "labanddemo.com"
$Cdate = (Get-Date).tostring("dd-MM-yyyy-hh-mm-ss")


        $SGBeforeUpdateFile = New-Item -type file -force "C:\Temp\Groups_Before_$Cdate.csv"
        $SGAfterUpdateFile = New-Item -type file -force "C:\Temp\Groups_After_$Cdate.csv"
        Import-CSV "C:\Temp\Users.csv" | % {
        $userN = $_.userName
        $sourceDomain = $_.Domain

               
                   $uValidation = Get-ADUser -filter {sAMAccountName -eq $userN} -Server $tagetDomain
                  
                       If($uValidation -eq $Null)
                        {
                           Write-Host "User $userN Doesn't Exist in $tagetDomain Domain"
                           $errorFile = New-Item -type file -force "C:\Temp\Error_$Cdate.csv"
                           "User $userN Doesn't Exist in $tagetDomain Domain"| Out-File $errorFile -encoding ASCII -append
                        }
                        Else
                        {
                           $userN | Out-File $SGBeforeUpdateFile -encoding ASCII -append
                           $GroupDetails = get-aduser -Server $sourceDomain -identity $userN -Properties memberof
                           $GroupsDN = $GroupDetails.memberof
                           $GroupsDN | Out-File $SGBeforeUpdateFile -encoding ASCII -append
                           foreach ($Group in $GroupsDN)
                              {
                               $MigrateduserN = Get-ADUser $userN -Server $tagetDomain -Properties DistinguishedName
                               Write-host "Adding User -> $MigrateduserN"
                               Write-host "To Group -> $Group"
                               Add-ADGroupmember -Server $sourceDomain -Identity $Group -Members $MigrateduserN
                               $members = Get-ADGroupmember -Server $sourceDomain -Identity $Group
                               $GroupName = Get-ADGroup -Server $sourceDomain $Group
                               $GroupName.Name | Out-File $SGAfterUpdateFile -encoding ASCII -append
                               $members.distinguishedName | Out-File $SGAfterUpdateFile -encoding ASCII -append
                               Write-host "....Done!" -ForegroundColor Green
                               Write-host ""
                               }
                        }

        }

Download:
You can also download the script from the following locations:

  1. OneDrive
  2. TechNet Gallery 


20 comments:

This comment has been removed by the author.

feel regret I did not know this before I read your article.
superfighters
y8

Nice post. I learn something totally new and challenging on websites I stumbleupon every day. It's always useful to read through articles from other authors and practice something from other sites.
check this out FMWhatsApp Apk

I am really enjoying your site.It’s simple, yet effective, thank you for this article.Now I have to share some information about How To Fix “mcafee Antivirus” problem. If you have any problem rearding Mcafee so click on this site:mcafee antivirus nummer belgie

I like your blog.You have done Excellent work. I appreciate.Here I want to inform all of you if you are looking for to resolve your Norton Antivirus problems,so you are in right place.we always available for your support.So whenever you need any help so just click on this link- norton Antivirus ondersteuningsnummer

I’m really impressed with your writing skills and also with the layout on your blog it's Very interesting to read.Now Here i would llike to share some information about HP Printer If you are facing any problem relate to your HP Printer's we wil resolve your queries at sam time.For any help please visit on our website:hp printer contact belgie

Excellent post. I certainly appreciate this website.Keep writing.well here if you want to Overcome the issues of Avast antivirus.Pick the Best Assistance over our site to resolve your queries.Visit us :avast antivirus ondersteuning

hi, your post is very helpful for me. Finally, I found exactly what i want. If need information regarding printers then you can visit our site Xerox Printer ondersteuning for help.

hi, Your post is very helpful for me, If you want to know more about antivirus then you can visit our site Canon Printer contacteren for help.


hi, Your post is very helpful for me,finally i got exactly what I want. If you want to know more about antivirus then you can visit our site Bitdefender belgie help.


Commenting as lilyloo180@gmail.com
Comment as:

hi, Your post is very helpful for me, finally i found exactly what i want , If you want to know more about antivirus then you can visit our site Kaspersky antivirus nummer for help.

I thank you for the information trực tiếp bóng đá! I was looking for and could not find. You helped me!

Thanks for sharing it is important for me. I also searched for that from here. Visit our site Contacteren Epson Printer

The first obvious benefit is the flexibility of the deal. There's practically no mission you can't purchase at our site. We provide documents, research papers, dissertations, theses, laboratory reports, personal announcements, data tasks, scheduling assignment help services, PowerPoint presentations, and also each other endeavor you may possibly require.

The effectiveness of IEEE Project Domains depends very much on the situation in which they are applied. In order to further improve IEEE Final Year

Project Domains practices we need to explicitly describe and utilise our knowledge about software domains of software engineering Final Year Project

Domains for CSE
technologies. This paper suggests a modelling formalism for supporting systematic reuse of software engineering technologies

during planning of software projects and improvement programmes in Final Year Projects for CSE.



Software management seeks for decision support to identify technologies like JavaScript that meet best the goals and characteristics of a software

project or improvement programme. JavaScript Training in

Chennai
Accessible experiences and repositories that effectively guide that technology selection are still lacking.



Aim of technology domain analysis is to describe the class of context situations (e.g., kinds of JavaScript software projects) in which a software

engineering technology JavaScript Training in Chennai can be applied successfully



The Angular Training covers a wide range of topics including Components, Angular Directives, Angular Services, Pipes, security fundamentals, Routing,

and Angular programmability. The new Angular TRaining will lay the foundation you need to specialise in Single Page Application developer. Angular Training

Being an understudy you should be very much familiar that tasks are the crucial markers of an understudy's exhibition and potential, executed by instructive coach's the world over. So it is truly sort of a required endeavor that must be paid attention to by all understudies. Focusing on these online scholarly composing Best Assignment administrations doesn't in any capacity implies that you are trifling with your work or not focusing on it, it really is a more astute strategy for beating your shortcomings. The profoundly paced world we are a piece of, requires such an alarm minds as there is a bad situation for shortcomings here.

Really Nice Post Admin, Very helpful looking for more posts, Now I have to share some information about How To Fix “yahoo mail Troubleshooting Guide” problem. If you are going through this problem you can simply visit yahoo mail bellen

Hi your post is very nice and i am greatful to you for sharing this post with us.here i want to share some information about Youtube.As we all know that you ube is a world famous application software used by more than a million users around the world.It allows the users to create video and upload them over youtube. so whenever you have any query regarding uploading video or anything about youtube or need any assistance how to run or any information that time please visit over this site-youtube email nederland

Post a Comment

Popular Posts

Share

Twitter Delicious Facebook Digg Stumbleupon Favorites More