Adding proxy address in AD

This topic contains 0 replies, has 1 voice, and was last updated by  Forums Archives 5 years, 7 months ago.

  • Author
    Posts
  • #6243

    by bigtwenty at 2012-12-26 15:19:16

    I have a csv file formatted with two columns, one is titled name and the second is proxyaddress. This is my script so far:

    Import-Module ActiveDirectory
    Import-Csv ajaytest.csv | Foreach {
    Get-ADUser $_.Name | Set-ADUser -Add @{proxyAddresses = ($_.proxy -split ";")}
    }

    The output I get tells me:

    Get-aduser: cannot find an object with identity: "john smith" under "DC=company,DC=com".
    at c:\users\testuser\desktop\importadusersproxy.ps1:3 char:12
    + Get-ADUser < <<<< $_.Name | Set-ADUser -Add @{proxyAddresses = ($_.proxy -split ";")}
    + CategoryInfo : ObjectNotFound: (John Smith :ADUser) [Get-Aduser], ADIdentityNotFoundException
    + FullyQualifiedErroID : Cannot Find an object with the identity: "john smith" under: "DC=Company,DC=Com".,Micro
    soft.ActiveDirectory.Management.Commands.GetADUser

    Could someone help me out here? The user exists but it isnt in that container, it is listed for example in DC=Users,DC=SubCompany,DC= Company,DC=Com

    I believe the script should be checking the entire domain but doesn't seem to be finding the user. In the spread sheet, the Name column is filled with: John Smith

    I also tried smith, John

    Thanks

    by Klaas at 2012-12-27 00:27:04

    Although the Description in the help says you can pass any of the following properties:
    [quote]The Identity parameter specifies the Active Directory user to get. You can identify a user by its distinguished name (DN), GUID, security identifier (SID), Security Accounts Manager (SAM) account name or name.[/quote], when you read further about the '-identity' property it says it accepts DN, GUID, SID or SAMaccountname, not Name.
    You could use the name in the -filter parameter, something like: Get-ADuser -Filter 'Name -Like $_.name' or you could make a .csv with SAMaccountname.

    by bigtwenty at 2012-12-27 08:39:08

    Thanks for your help, now this is what i get: (I also do a set-location to map to the share this script and csv are locate on, then I run the ps1 file.

    Get-ADUser : Error parsing query: 'Name -Like @{Name=ajay patel; ProxyAddress=smtp:jsmith@company.com;smtp:test@yourma
    ma.com}.Name' Error Message: 'syntax error' at position: '12'.
    At \\server\group\share\Scripts\Exchange\365\CSV\importadusersproxy.ps1:3 char:12
    + Get-ADUser < <<< -filter "Name -Like $_.Name" | Set-ADUser -Add @{proxyAddresses = ($_.proxy -split ";")}
    + CategoryInfo : ParserError: (:) [Get-ADUser], ADFilterParsingException
    + FullyQualifiedErrorId : Error parsing query: 'Name -Like @{Name=john smithl; ProxyAddress=smtp:jsmith@company.co
    m;smtp:test@yourmama.com}.Name' Error Message: 'syntax error' at position: '12'.,Microsoft.ActiveDirectory.Managem
    ent.Commands.GetADUser

    by bigtwenty at 2012-12-27 08:57:32

    So i have adjusted my script to below:

    Import-Module ActiveDirectory
    Import-Csv ajaytest.csv | Foreach {
    Get-ADUser -Filter "Name -Like '$_.Name'" | Set-ADUser -Add @{proxyAddresses = ($_.proxy -split ";")}
    }

    And now i get no error, but the proxy addresses were not added. Anyway to turn on verbose logging?

    by bigtwenty at 2012-12-27 10:41:34

    Ok, im a beginner at this sort of stuff but i figured it out. I was following this thread at

    http://social.technet.microsoft.com/For ... d507875de8

    It appears that my csv file proxy column was not labeled correctly. It was labeled proxyaddresses and not simply proxy. So for all you beginners out there, the csv file should have two columns, the first in block A1 should read Name and B1 should read proxy. Then A2 should have the samaccount name like jsmith and B2 should have smtp:jsmith@company.com;johns@company2.com

    and the script should read

    Import-Module ActiveDirectory
    Import-Csv ajaytest.csv | Foreach {
    Get-ADUser $_.Name | Set-ADUser -Add @{proxyAddresses = ($_.proxy -split ";")}
    }

    Thanks for everyones help again

You must be logged in to reply to this topic.