Методы переменной $Host. Часть 3.

Продолжим рассмотрение методов переменной $host. В этой статье мы разберем метод PromptForCredential.

Другие статьи серии:
Методы переменной $Host. Часть 1.
Методы переменной $Host. Часть 2.

$Host.UI.PromptForChoice

Метод PromptForCredential имеет два набора параметров.

01

Первый, принимающий четыре параметра:

$Host.UI.PromptForCredential(string caption, string message, string userName, string targetName)

а также более расширенный вариант

$Host.UI.PromptForCredential(string caption, string message, string userName, string targetName,System.Management.Automation.PSCredentialTypes allowedCredentialTypes,System.Management.Automation.PSCredentialUIOptions options).

В качестве результата метод возвращает объект System.Management.Automation.PSCredential.

Начнем с рассмотрения первого набора параметров.

02

Caption — текст заголовка окна запроса пароля.

Message — текст сообщения, выводимого в этом же окне.

UserName — имя пользователя.

TargetName — имя компьютера или домена, где будут использованы полученные учетные данные.

03

В результате выполнения команды мы получим следующее:

04

Второй вариант использования метода отличается от первого наличием двух дополнительных параметров: allowedCredentialTypes и options.

05

Параметр allowedCredentialTypes представляет из себя энумератор System.Management.Automation.PSCredentialTypes, и может принимать одно из трех значений — Default, Domain и Generic.

Default — значение по умолчанию, которое соответствует второму значению — Domain.

При  использовании Default или Domain мы получим учетные данные в виде Domain\UserName или ComputerName\UserName, то есть точно так, как и в предыдущем варианте с указанием четырех параметров.

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

06

Параметр Options — это энумератор System.Management.Automation.PSCredentialUIOptions, принимающий значения AlwaysPrompt, Default, None, ReadOnlyUserName и ValidateUserNameSyntax.

При вызове метода нам не обязательно указывать параметры именно в таком виде, мы можем их передать и без указания типа параметра.

07

А так как энумераторы — это фактически значения типа Int, то мы также можем указать их в этом виде. Для определения соответствия текстового значения цифровому, мы воспользуемся командой Format-List c параметром -Force.

08

Кроме того, мы можем напрямую запросить значение свойства value__.

085

В итоге команда будет выглядеть следующим образом:

09


Страницы в социальных сетях:

Twitter: https://twitter.com/vsseth
Facebook: https://fb.com/inpowershell
VKontakte: https://vk.com/inpowershell


Реклама

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s