Хоёр дахь PowerShell үсрэлт дээрх прокси итгэмжлэл
Remoting нэвтрэлт шилжүүлэгдэнэ гэж таамаглахын оронд алсын сервер дээр ажиллаж буй Invoke-WebRequest-д зориулсан прокси бүртгэлийг өгнө үү.
B сервер дээр интерактив байдлаар ажилладаг вэб хүсэлт нь ижил командыг тэнд PowerShell remoting-оор ажиллуулахад 407 авч болно. A-аас B руу нэвтрэх нь B-ийн дараагийн баталгаажуулалтын солилцоонд тухайн таних тэмдгийг автоматаар шилжүүлэхгүй.
A → remoting session on B → HTTP proxy → website
Дэмжигддэг нэг шийдэл бол прокси бүртгэлийг тодорхой өгөх гадагш хүсэлтэд зориулж. Одоо байгаа PSSession болон зохих ёсоор авсан PSCredential объекттой:
Invoke-Command -Session $session -ArgumentList $proxyCredential -ScriptBlock {
param([pscredential]$outboundProxyCredential)
$requestOptions = @{
Uri = 'https://api.example/'
Proxy = 'http://proxy.example:8080'
ProxyCredential = $outboundProxyCredential
}
Invoke-WebRequest @requestOptions
}
Итгэмжлэлийн объект нь проксийн зориулсан бүртгэлд хамаарна. Сесс өөрийн ердийн remoting баталгаажуулалтыг ашигласaар байх ба вэбсайт руу нэвтрэх нь тухайн сайтын хүсэлтийн хэсэг хэвээр байна.
Энэ нь эхний нэвтрэлтийн автомат шилжүүлэгт найдахгүй байх боломжийг олгоно. Гэхдээ алсын хост өгсөн бүртгэлийн материалыг зорьсон удирдлагын дизайны хэсэг болгон боловсруулахыг шаарддаг. Бусад архитектурууд, тухайлбал удирдлагатай RunAs төгсгөлийн цэг эсвэл хязгаарлагдмал үйлчилгээний хандалт нь өөрийн тохиргооны шаардлагатай.
Хэрэв анхдагч прокси итгэмжлэл буруу таамаглал байсан бол алсын команд аль бүртгэлийн дор ажиллаж байгаа, прокси ямар баталгаажуулалт шаардаж байгааг тэмдэглэнэ үү. Вэб хүсэлтийн илүү урт хугацаа нь дутуу итгэмжлэлийг өгч чадахгүй.
New-PSSessionOption дээрх прокси тохиргоо нь remoting холболт өөрт нь хамаарна. B-ийн гадагш вэб холболт прокси шаардаж байгаа үед Invoke-WebRequest-ийг алсын скрипт блок дотор тохируулна уу.