Свойства пользователя AD возвращают имя свойства, а не значение - PullRequest
0 голосов
/ 10 июля 2020

Я пытаюсь l oop через пользователей AD отправить их в SOAP API.

По какой-то причине я получаю то, что выглядит как отличительное имя в строке XML вместо значение свойства.

# get list of users
$users = Get-ADUser -Filter * -Properties mail, telephoneNumber, title, manager, company, l

ForEach($user in $users)
{
    # properties return expected values back to console
    $user.GivenName
    $user.Surname
    $user.title

# build XML payload
$body = @"
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:saas="SaaS.Services">
   <soapenv:Header/>
   <soapenv:Body>
      <saas:InsertObject>
         <saas:commandData>
            <saas:ObjectType>Employee#</saas:ObjectType>
            <saas:Fields>
               <saas:ObjectCommandDataFieldValue>
                  <saas:Name>FirstName</saas:Name>
                  <saas:Value>$user.GivenName</saas:Value>
               </saas:ObjectCommandDataFieldValue>
               <saas:ObjectCommandDataFieldValue>
                  <saas:Name>LastName</saas:Name>
                  <saas:Value>$user.Surname</saas:Value>
               </saas:ObjectCommandDataFieldValue>
               <saas:ObjectCommandDataFieldValue>
                  <saas:Name>Title</saas:Name>
                  <saas:Value>$user.title</saas:Value>
               </saas:ObjectCommandDataFieldValue>
            </saas:Fields>
         </saas:commandData>
      </saas:InsertObject>
   </soapenv:Body>
</soapenv:Envelope>
"@    
}

Я ожидал увидеть Лару, Крофт и Проводника, например, в строке XML, но на самом деле получаю:

CN=Lara Croft,CN=Users,DC=TESTLAB,DC=local.GivenName
CN=Lara Croft,CN=Users,DC=TESTLAB,DC=local.Surname
CN=Lara Croft,CN=Users,DC=TESTLAB,DC=local.title

1 Ответ

0 голосов
/ 10 июля 2020

Я обнаружил, что мне нужно заключить свойства в скобки $ (). Я мог бы назначить их переменным, которые работали нормально, но был озадачен, почему я не могу использовать их напрямую.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...