Partager via


Test-SqlSmartAdmin

Teste l’intégrité de Smart Admin en évaluant les stratégies de gestion basée sur des stratégies SQL Server (PBM).

Syntaxe

Test-SqlSmartAdmin
    [-ShowPolicyDetails]
    [-AllowUserPolicies]
    [-NoRefresh]
    [[-Path] <String[]>]
    [-AccessToken <PSObject>]
    [-TrustServerCertificate]
    [-HostNameInCertificate <String>]
    [-Encrypt <String>]
    [-ProgressAction <ActionPreference>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]
Test-SqlSmartAdmin
    [-ShowPolicyDetails]
    [-AllowUserPolicies]
    [-NoRefresh]
    [-InputObject] <SmartAdmin[]>
    [-AccessToken <PSObject>]
    [-TrustServerCertificate]
    [-HostNameInCertificate <String>]
    [-Encrypt <String>]
    [-ProgressAction <ActionPreference>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

L’applet de commande Test-SqlSmartAdmin teste l’intégrité de l’administrateur intelligent pour l’instance SQL Server en évaluant les stratégies PBM (Policy Based Management) SQL Server.

Cette applet de commande prend en charge les modes d’opération suivants pour retourner l’objet :

  • Transmettez le chemin d’accès de l’instance de SQL Server au paramètre Path.
  • Transmettez un objet Smo.Server au paramètre InputObject, directement ou via le pipeline.

Module requirements: version 21+ on PowerShell 5.1; version 22+ on PowerShell 7.x.

Exemples

Exemple 1 : Tester l’état de l’administrateur intelligent SQL Server

PS C:\> cd SQLSERVER:\SQL\Computer\MyInstance 
PS SQLSERVER:\SQL\Computer\MyInstance> Get-SqlSmartAdmin | Test-SqlSmartAdmin

La première commande change le répertoire de l’instance SQL Computer\MyInstance.

Exemple 2 : Évaluer les résultats des tests de l’administrateur intelligent SQL Server

PS C:\> cd SQLSERVER:\SQL\Computer\MyInstance
PS SQLSERVER:\SQL\Computer\MyInstance> $PolicyResults = Get-SqlSmartAdmin | Test-SqlSmartAdmin 
PS SQLSERVER:\SQL\Computer\MyInstance> $PolicyResults.PolicyEvaluationDetails | select Name, Category, Result, Expression

La première commande remplace le répertoire par l’instance SQL Computer\MyInstance.

Exemple 3 : Afficher l’état de l’administrateur intelligent SQL Server

PS C:\> PS SQLSERVER:\SQL\COMPUTER\DEFAULT> (Get-SqlSmartAdmin).EnumHealthStatus()

number_of_storage_connectivity_errors: 0 
number_of_sql_errors: 2 
number_of_invalid_credential_errors: 0 
number_of_other_errors : 0 
number_of_corrupted_or_deleted_backups: 0 
number_of_backup_loops: 2 
number_of_retention_loops: 2

Cette commande génère l’état de l’administrateur intelligent SQL Server local.

Paramètres

-AccessToken

Jeton d’accès utilisé pour s’authentifier auprès de SQL Server, comme alternative à l’authentification utilisateur/mot de passe ou Windows.

Cela peut être utilisé, par exemple, pour se connecter à SQL Azure DB et SQL Azure Managed Instance à l’aide d’un Service Principal ou d’un Managed Identity.

Le paramètre à utiliser peut être une chaîne représentant le jeton ou un objet PSAccessToken tel qu’il est retourné en exécutant Get-AzAccessToken -ResourceUrl https://database.windows.net.

Ce paramètre est nouveau dans v22 du module.

Type:PSObject
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AllowUserPolicies

Indique que cette applet de commande exécute des stratégies utilisateur trouvées dans les catégories d’avertissement et de stratégie d’erreur Smart Admin.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Confirm

Vous invite à confirmer avant d’exécuter l’applet de commande.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Encrypt

Type de chiffrement à utiliser lors de la connexion à SQL Server.

Cette valeur est mappée à la propriété EncryptSqlConnectionEncryptOption sur l’objet SqlConnection du pilote Microsoft.Data.SqlClient.

Dans la version 22 du module, la valeur par défaut est Optional (pour la compatibilité avec v21). Dans la version 23+ du module, la valeur par défaut est « Obligatoire », ce qui peut créer une modification cassant pour les scripts existants.

Ce paramètre est nouveau dans v22 du module.

Type:String
Valeurs acceptées:Mandatory, Optional, Strict
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-HostNameInCertificate

Nom d’hôte à utiliser pour valider le certificat TLS/SSL SQL Server. Vous devez passer ce paramètre si votre instance SQL Server est activée pour Forcer le chiffrement et que vous souhaitez vous connecter à une instance à l’aide du nom d’hôte/shortname. Si ce paramètre est omis, le passage du nom de domaine complet (FQDN) à -ServerInstance est nécessaire pour se connecter à une instance SQL Server activée pour Forcer le chiffrement.

Ce paramètre est nouveau dans v22 du module.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-InputObject

Spécifie un tableau d’objets SmartAdmin. Pour obtenir cet objet, utilisez l’applet de commande Get-SqlSmartAdmin.

Type:SmartAdmin[]
Position:1
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-NoRefresh

Indique que cette applet de commande n’actualise pas manuellement l’objet spécifié par les paramètres Path ou InputObject.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Path

Spécifie le chemin d’accès de l’instance SQL Server, sous la forme d’un tableau de chaînes. Si vous ne spécifiez pas de valeur pour ce paramètre, l’applet de commande utilise l’emplacement de travail actuel.

Type:String[]
Position:1
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ProgressAction

Détermine comment PowerShell répond aux mises à jour de progression générées par un script, une applet de commande ou un fournisseur, telles que les barres de progression générées par l’applet de commande Write-Progress. L’applet de commande Write-Progress crée des barres de progression qui affichent l’état d’une commande.

Type:ActionPreference
Alias:proga
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ShowPolicyDetails

Indique que cette applet de commande affiche le résultat de la stratégie. L’applet de commande génère un objet par évaluation de stratégie. La sortie inclut les résultats de l’évaluation : par exemple, le nom de la stratégie, de la catégorie et de l’intégrité.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-TrustServerCertificate

Indique si le canal sera chiffré lors du contournement de la marche à pied de la chaîne de certificats pour valider l’approbation.

Dans la version 22 du module, la valeur par défaut est $true (pour la compatibilité avec v21). Dans v23+ du module, la valeur par défaut est « $false », ce qui peut créer une modification cassant pour les scripts existants.

Ce paramètre est nouveau dans v22 du module.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-WhatIf

Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

Microsoft.SqlServer.Management.Smo.SmartAdmin[]

Sorties

Cette applet de commande génère les résultats de l’évaluation des stratégies.