Я пытаюсь 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