Нет, вы не можете массово загружать пользователей с пользовательским атрибутом на портал Azure, используя CSV напрямую. Но вы можете обновить пользовательский атрибут после пользователей, созданных с помощью PowerShell, как показано ниже:
Connect-AzureAD //connect to your b2c tenant
$userNameList = <string array list of signin name of users in your CSV>
$ExtensionName = <extension name of your company id attribute>
$ExtensionValue = <value of your companyID>
$userlist = Get-AzureADUser | Where-Object {$userNameList.Contains($_.SignInNames[0].Value) }
foreach( $user in $userlist){
Set-AzureADUserExtension -ExtensionName $ExtensionName -ExtensionValue $ExtensionValue -ObjectId $user.ObjectId
}
Как видите, есть один параметр, который мы не знаем, это "ExtensionName". После того как мы создали собственный атрибут в B2C, бэкэнд создаст для него ключ ( дополнительная информация ), обычно формат ключа: extension_<some id>_<name of custom attribute>
. Ключом является значение ExtensionName здесь. Чтобы найти ключ, выполните команду ps ниже:
Get-AzureADExtensionProperty
![enter image description here](https://i.stack.imgur.com/YAjWY.png)
Я создал пользовательский атрибут, как вы, и, как вы можете видеть, ключв моем случае это extension_48c33b45c4f8419eb9d97a0f3ff1817b_CompanyId
Так что мы можем просто добавить этот ключ расширения со значением, которое вам нужно для новых созданных пользователей, которые будут соответствовать вашим требованиям.
В этом случае я загрузил тестового пользователя с портала Azure, как вы можете видеть, пока я использую пользователя для получения токена доступа, претензия companyID отсутствует: ![enter image description here](https://i.stack.imgur.com/3oKGV.png)
После запуска скрипта ниже:
Connect-AzureAD
$userNameList = New-Object System.Collections.ArrayList
$userNameList.Add("newuser")
$ExtensionName = "extension_48c33b45c4f8419eb9d97a0f3ff1817b_CompanyId"
$ExtensionValue = "MSFT"
$userlist = Get-AzureADUser | Where-Object {$userNameList.Contains($_.SignInNames[0].Value) }
foreach( $user in $userlist){
Set-AzureADUserExtension -ExtensionName $ExtensionName -ExtensionValue $ExtensionValue -ObjectId $user.ObjectId
}
Получите токен доступа вновь созданного пользователя с именем "newuser" снова:
Как видите, компанияИдентификатор был установлен. Надеюсь, это поможет .