Сброс клиентского секрета субъекта-службы Azure с помощью powershell

Используя команды PowerShell, я хочу сбросить секрет клиента-участника-службы.

Я выполнил следующие шаги из статьи https://docs.microsoft.com/en-us/powershell/azure/create-azure-service-principal-azureps?view=azps-5.8.0, но сбросить пароль

Remove-AzADSpCredential -DisplayName ServicePrincipalName
$newCredential = New-AzADSpCredential -ServicePrincipalName ServicePrincipalName

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

Я выполнил указанную выше команду, а затем перешел к регистрации приложения этого принципала службы, и там я перешел к сертификатам и секретам, я вижу, что он не создал новый секрет.

Используя bash, я могу сбросить пароль, выполнив команду ниже, но я хочу, чтобы это было сделано с помощью команды powershell

az ad sp credential reset --name

person ashish    schedule 26.04.2021    source источник
comment
SharePoint? Хранимая процедура? Что значит SP? Не заставляйте людей гадать.   -  person Panagiotis Kanavos    schedule 26.04.2021
comment
SP - субъект-служба в Azure AD ????.   -  person Gaurav Mantri    schedule 26.04.2021
comment
@PanagiotisKanavos Service Principal в лазурном объявлении   -  person ashish    schedule 26.04.2021
comment
Что вы имеете в виду but it did not reset the password, откуда вы это узнали?   -  person Joy Wang    schedule 26.04.2021
comment
@JoyWang Я зарегистрировался в приложении для этого принципала службы, и там я перешел к сертификатам и секретам, я вижу, что он не создал новый секрет.   -  person ashish    schedule 26.04.2021
comment
@ashish отредактируйте вопрос, чтобы людям не приходилось гадать. Объясните, что не так и как вы решили, что проблема в самом вопросе, а не в комментариях. Возможно, вы ищете не то место или не то.   -  person Panagiotis Kanavos    schedule 26.04.2021


Ответы (1)


Я перешел к регистрации приложения этого принципала службы и там я перешел к сертификатам и секретам, я вижу, что он не создал новый секрет.

Ну, на самом деле команда New-AzADSpCredential действительно создала для вас новый секрет. Во-первых, вам необходимо знать взаимосвязь между регистрацией приложений (приложение AD) и субъектом службы, см. объекты приложения и субъекта-службы в Azure Active Directory.

Короче говоря, субъект-служба - это локальное представление приложения AD в конкретном клиенте. Когда вы создаете секрет для субъекта-службы, он не будет отображаться в колонке Certificates & secrets, вы можете просто получить его с помощью _ 3_.

Если вы хотите сбросить секрет, который вы можете найти на портале, вам необходимо сбросить сценарий для приложения AD (т.е. регистрацию приложения) через _ 4_ и _ 5_.

Вы можете обратиться к приведенному ниже образцу, он сбрасывает секрет со значением ce96a0ed-5ae8-4a5a-9b3c-630da9ea3023, он действителен в течение одного года, вы можете найти его на портале.

$obj = (Get-AzADApplication -DisplayName joyappv2).ObjectId
Remove-AzADAppCredential -ObjectId $obj -Force
$azurePassword = ConvertTo-SecureString "ce96a0ed-5ae8-4a5a-9b3c-630da9ea3023" -AsPlainText -Force
$date = Get-Date
$newCredential = New-AzADAppCredential -ObjectId $obj -Password $azurePassword -StartDate $date -EndDate $date.AddYears(1)

Примечание. Вы не смогли снова получить секретное значение после его создания, поэтому сохраните его при создании.

person Joy Wang    schedule 26.04.2021
comment
здесь мы устанавливаем пароль. Возможно ли, что он может автоматически сгенерировать пароль? - person ashish; 26.04.2021
comment
@ashish В этой команде требуется параметр -Password, если вы не хотите указывать конкретное значение, просто используйте $azurePassword = New-Guid | ConvertTo-SecureString -AsPlainText -Force, чтобы сгенерировать guid в качестве пароля. - person Joy Wang; 26.04.2021