0

Windows タスク スケジューラを使用して (主に 1 日に 2 回) タイムリーに呼び出される PS1 ファイルを作成したいと考えています。現在、PS1 ファイルの目的は、内部 Web サイトを呼び出して、実行中にアプリケーション プールをアクティブに保つことです。アプリケーション プール スコープ内のいくつかのバックグラウンド ジョブ。

だから私は次のファイルを書きました:

$request = [System.Net.WebRequest]::Create("https://localhost/")
$response = $request.GetResponse()
$response.Close()

しかし、次のエラーが発生します。

"0" 個の引数を指定して "GetResponse" を呼び出し中に例外が発生しました: "基になる接続が閉じられました: SSL/TLS セキュア チャネルの信頼関係を確立できませんでした。"

そのため、ps1 ファイルを変更して、次のようにセキュリティ証明書をバイパスします。

$request = [System.Net.WebRequest]::Create("https://localhost/")
$response = $request.GetResponse()
$response.Close()
ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => certificate.Issuer == "CN=localhost";

しかし、これにより次のエラーが発生します。

******\AppPoolActivation.ps1:4 で char:67
+ ServicePointManager.ServerCertificateValidationCallback += (送信者、証明書、...
+ ~
パラメータ リストに引数がありません。
    + CategoryInfo : ParserError: (:) []、ParentContainsErrorRecordException
    + FullyQualifiedErrorId : MissingArgument

バックグラウンド ジョブを実行する前にローカル ホストを呼び出して、アプリケーション プールをアクティブに保ち、セキュリティ証明書をバイパスする方法を教えてください。

4

0 に答える 0