Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Powershell piping query

Posted on 2012-03-11
7
Medium Priority
?
879 Views
Last Modified: 2012-08-13
Hi

We are using Quest Powershell. An object has SIDvalue 1234. The name is User1.

So if I run:

get-QADUser -identity User1 | fl

One of the returned values is:

objectGUID: 1234

Now, what I need to do is find a Powershell command that will return the "DisplayName" attribute if I know the objectGUID.

Does anyone know how I can do this?

And, if I have a list of objectGUID's in a file named GUID.csv, how can I do the above?

Any help really appreciated!
0
Comment
Question by:neil4933
  • 2
  • 2
  • 2
  • +1
7 Comments
 
LVL 18

Expert Comment

by:Learnctx
ID: 37708049
Someone has put together a function for exactly this. See here. Customise that to your needs.
0
 
LVL 12

Expert Comment

by:Navdeep
ID: 37708269
Hi ,

Try the following commands

get-qaduser -includeProperty ObjectGUID | where{$_.ObjectGuid -eq '1234'} | FL DisplayName, ObjectGuid

or user IncludeAllProperties instead of IncludeProperty

For a list of Guid in a csv file you can use for loop, for example guid is specified under column GUID in CSV file

Import the csv file into a var
$ColItems = import-csv D:\FileName.csv
foreach($colItem in $colItems)
        {
           $objGuid = $colItem.GUID
           get-qaduser -includeProperty ObjectGuid | where{$_.ObjectGuid -eq "$objGuid"} | FL  DisplayName, ObjectGuid

        }

Note: First test on few users.

Regards,
Navdeep [v-2nas]
0
 
LVL 71

Expert Comment

by:Chris Dent
ID: 37712396
Since the objectGUID is a unique reference you should simply be able to do:

Get-QADUser <objectGUID> | Select-Object DisplayName

Chris
0
Lessons on Wi-Fi & Recommendations on KRACK

Simplicity and security can be a difficult  balance for any business to tackle. Join us on December 6th for a look at your company's biggest security gap. We will also address the most recent attack, "KRACK" and provide recommendations on how to secure your Wi-Fi network today!

 

Author Comment

by:neil4933
ID: 37712619
Hi v-nas, that doesn't work.

Chris, thanks but Quest doesn't seem to work with objectGUID in that way, even though it is unique.

So, to confirm:

get-QADUser -identity User1 | fl objectGUID

objectGUID: 1234

There must be a straightforward Powershell to run that says "Get-QADUser where objectGUID is 1234"?

Thanks in advance?
0
 
LVL 18

Expert Comment

by:Learnctx
ID: 37712865
Quest converts the object guid to hex format which is why it isn't working. If you do the following it will work.

$guid = (get-qaduser username).objectguid
Get-qaduser $guid

That should work.
0
 
LVL 71

Accepted Solution

by:
Chris Dent earned 2000 total points
ID: 37713590
Quest stores it in two different values. The first is the real one, objectGUID, the second is "Guid" and is the better format.

Using that you can do this:

Get-QADUser (Get-QADuser "Chris Dent").GUID

What's in your file exactly? GUID's in this format?

12312312-1231-1231-1231-123123123123

If so, you can simply use Get-QADUser to get the lot. If not, you'd be better converting the entry to a real System.GUID object before trying to pass it in.

Chris
0
 
LVL 12

Expert Comment

by:Navdeep
ID: 37718533
Given that you use the Guid in valid system input, the code will work.

Regards,
Navdeep [v-2nas]
0

Featured Post

Simplify Active Directory Administration

Administration of Active Directory does not have to be hard.  Too often what should be a simple task is made more difficult than it needs to be.The solution?  Hyena from SystemTools Software.  With ease-of-use as well as powerful importing and bulk updating capabilities.

Question has a verified solution.

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

A bad practice commonly found during an account life cycle is to set its password to an initial, insecure password. The Password Reset Tool was developed to make the password reset process easier and more secure.
It’s time for spooky stories and consuming way too much sugar, including the many treats we’ve whipped for you in the world of tech. Check it out!
This tutorial will walk an individual through the process of transferring the five major, necessary Active Directory Roles, commonly referred to as the FSMO roles to another domain controller. Log onto the new domain controller with a user account t…
Sometimes it takes a new vantage point, apart from our everyday security practices, to truly see our Active Directory (AD) vulnerabilities. We get used to implementing the same techniques and checking the same areas for a breach. This pattern can re…

782 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