AvoidUsingPlainTextForPassword

Niveau de gravité : Avertissement

Description

Cette règle détecte des paramètres de fonction ou de script avec des noms liés au mot de passe qui sont déclarés avec un string type au lieu du SecureString type. Les paramètres de mot de passe acceptant le texte clair exposent les mots de passe et peuvent compromettre la sécurité de votre système. Vous ne devriez pas accepter les mots de passe en texte brut. Utilisez plutôt le type SecureString pour stocker les mots de passe de manière sécurisée.

Les paramètres suivants sont considérés comme des paramètres de mot de passe et ne sont pas sensibles à la majuscule :

  • Mot de passe
  • Réussite
  • Passwords
  • Phrase secrète
  • Phrases secrètes
  • PasswordParam

Si vous définissez un paramètre avec un nom à partir de la liste fournie, déclarez-le avec le type SecureString .

Example

Non conforme

function Test-Script
{
    [CmdletBinding()]
    Param
    (
        [string]
        $Password
    )
    ...
}

Compliant

function Test-Script
{
    [CmdletBinding()]
    Param
    (
        [SecureString]
        $Password
    )
    ...
}