有効なパラメータ セットが確実に存在するにもかかわらず、Powershell は次のように表示します: 「パラメータ セットを解決できません...」

有効なパラメータ セットが確実に存在するにもかかわらず、Powershell は次のように表示します: 「パラメータ セットを解決できません...」

3 つの特定のパラメータのうち 1 つだけを受け入れる Powershell コマンドレットを実行しようとしています。それらのパラメータが何であるかはわかっていますし、それらのパラメータを正しく入力していることも確かです。管理者として Powershell を実行しており、関連する Powershell モジュールが読み込まれていること、および実行しようとしているコマンドレットが有効であり、そのモジュールから読み込まれていることも確かです。

コマンドレットはでありSet-ADFSRelyingPartyTrust -SamlResponseSignature、有効なパラメータはでありMessageOnly AssertionOnlyMessageAndAssertion次のように提供されます:https://docs.microsoft.com/en-us/powershell/module/adfs/set-adfsrelyingpartytrust?view=winserver2012r2-ps

問題は、これら 3 つのどれを試しても、次のエラーが発生することです。

Set-AdfsRelyingPartyTrust : Parameter set cannot be resolved using the specified named parameters.
At line:1 char:1
+ Set-AdfsRelyingPartyTrust -SamlResponseSignature MessageAndAssertion
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Set-AdfsRelyingPartyTrust], ParameterBindingException
    + FullyQualifiedErrorId : AmbiguousParameterSet,Microsoft.IdentityServer.Management.Commands.SetRelyingPartyTrustCommamd

残念なことに、既知の不正なパラメータを使用して -Whatif でコマンドレットを実行すると、次のようなレポートが出力されます。

Set-AdfsRelyingPartyTrust : Cannot validate argument on parameter 'SamlResponseSignature'. 
The argument "False" does not belong to the set "AssertionOnly,MessageAndAssertion,MessageOnly" 
specified by the ValidateSet attribute. Supply an argument that is in the set and then try the command again.

報告されたセットから値をコピーして貼り付けても、同じエラーが発生します。一体何が間違っているのでしょうか?

すでに回答されている場合はお詫びします。私が確認したすべての検索結果は、そのエラーがより大きなスクリプトの一部としてポップアップ表示された場合、または投稿者が有効なパラメータ セットを確信していない場合の対処方法のみを扱っていました。コマンドレットがスタンドアロンで実行され、パラメータ セットがわかっている場合のこのエラーに関する説明は見つかりませんでした。

答え1

ドキュメントをよく見ると、3つのパラメータセットがあります。よく見ると、1つの固有のパラメータを除くすべてのパラメータが、必須

コマンドレットでSet-ADFSRelyingPartyTrustしなければならない3 つの方法のいずれかでターゲットを指定します。

次のいずれかが必要です:

  • -TargetRelyingParty
  • -TargetIdentifier
  • -TargetName

ドキュメントでは、ほとんどのパラメータに角括弧が付いていますが、この 3 つのパラメータには付いていません。また、異なる色でレンダリングされています。これらの違いは、これらが必須であることを示しています。

関連情報