重症度レベル:エラー
デフォルト状態:常に有効
Description
このルールは、単一の PSCredental オブジェクトではなく、別々のユーザー名とパスワードパラメータを使用する関数を検出します。 関数は別々のユーザー名とパスワードパラメータを使うべきではありません。 コマンドパラメータを標準化するために、認証情報は PSCredential型のオブジェクトとして受け入れるべきです。
例
非準拠
function Test-Script
{
[CmdletBinding()]
Param
(
[String]
$Username,
[SecureString]
$Password
)
...
}
対応
function Test-Script
{
[CmdletBinding()]
Param
(
[PSCredential]
$Credential
)
...
}
ルールの設定
このルールは常に有効で、設定はできません。 このルールを避けるために、以下のいずれかの方法を用いてください。
- 欲しいルールだけを含めるか、不要なルールを除外するカスタムルール設定ファイルを作成しましょう。
- 特定のコードブロックに対してルール抑制を抑制するために、適切なルール抑制属性をコードに追加してください。 詳細については、PSScriptAnalyzerの使用に関する「抑制ルール」セクションをご覧ください。