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