Set-AzSqlDatabaseVulnerabilityAssessmentRuleBaseline

Устанавливает базовое правило для оценки уязвимости.

Синтаксис

Set-AzSqlDatabaseVulnerabilityAssessmentRuleBaseline
   [-ServerName] <String>
   [-DatabaseName] <String>
   [-InputObject <VulnerabilityAssessmentRuleBaselineModel>]
   -BaselineResult <String[][]>
   -RuleId <String>
   [-RuleAppliesToMaster]
   [-ResourceGroupName] <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Описание

Командлет Set-AzureRmSqlDatabaseVulnerabilityAssessmentRuleBaseline задает базовый план правила оценки уязвимостей. При просмотре результатов оценки можно пометить определенные результаты как допустимые базовые показатели в своей среде. Базовые показатели — важные параметры, влияющие на содержимое отчета о проверке. При следующих проверках результаты, которые соответствуют базовым показателям, будут рассматриваться как прошедшие проверку. После того как вы установили базовое состояние безопасности, оценка уязвимостей сообщает только о отклонениях от базового плана, и вы можете сосредоточить внимание на соответствующих проблемах. Обратите внимание, что необходимо запустить командлет Enable-AzSqlServerAdvancedDataSecurity и Update-AzSqlServerVulnerabilityAssessmentSetting в качестве обязательного условия для использования этих командлетов.

Примеры

Пример 1. Настройка базового плана правила оценки уязвимостей

Set-AzSqlDatabaseVulnerabilityAssessmentRuleBaseline `
             -ResourceGroupName "ahmadtesting" `
             -ServerName "ahmadpilotserver" `
             -DatabaseName "AhmadPilotDb" `
             -BaselineResult @(,@('dbo', 'db_owner', 'SQL_USER', 'INSTANCE')) `
             -RuleID 'VA2108'

Rule ID Rule Applies To Master Baseline Results
------- ---------------------- ----------------
VA2108  False                  {dbo;db_owner;SQL_USER;INSTANCE}

$arrayList = [System.Collections.ArrayList]::new()
$arrayList.Add(@('dbo', 'db_owner', 'SQL_USER', 'INSTANCE'))

Set-AzSqlDatabaseVulnerabilityAssessmentRuleBaseline `
             -ResourceGroupName "demoresourcegroup" `
            -ServerName "demosqlser" `
            -DatabaseName "SQL_ERConnect" `
            -BaselineResult $arrayList `
            -RuleID 'VA2108'


Rule ID Rule Applies To Master Baseline Results                
------- ---------------------- ----------------                
VA2108  False                  {dbo;db_owner;SQL_USER;INSTANCE}

Set-AzSqlDatabaseVulnerabilityAssessmentRuleBaseline  `
			-ResourceGroupName "ResourceGroup01" `
			-ServerName "Server01"  `
			-DatabaseName "Database01"  `
			-RuleId "VA2108" `
			-RuleAppliesToMaster `
			-BaselineResult @( 'Principal1', 'db_ddladmin', 'SQL_USER', 'None')  , @( 'Principal2', 'db_ddladmin', 'SQL_USER', 'None')

ResourceGroupName		: ResourceGroup01
ServerName	        	: Server01
DatabaseName	    	: Database01
RuleId		        	: VA2108
RuleAppliesToMaster    	: True
BaselineResult		    : @( 'Principal1', 'db_ddladmin', 'SQL_USER', 'None')  , @( 'Principal2', 'db_ddladmin', 'SQL_USER', 'None')

Базовое значениеResult — это состав нескольких вложенных массивов, описывающих результаты T-SQL, которые будут добавлены в базовый план. Обратите внимание на специальный синтаксис PS для определения массива массивов с одним результатом с помощью открывающей запятой.
Результаты сканирования можно найти в хранилище, определенное командлетом Set-AzSqlServerVulnerabilityAssessment Параметры в разделе сканирования/{ServerName}/{DatabaseName}/scan_{ScanId}.json

Пример 2. Настройка базового плана правила оценки уязвимостей из базового объекта

Set-AzSqlDatabaseVulnerabilityAssessmentRuleBaseline `
            -ResourceGroupName "ResourceGroup01" `
            -ServerName "Server01" `
            -DatabaseName "Database01" `
            -RuleId "VA2108" `
            -BaselineResult @( 'Principal1', 'db_ddladmin', 'SQL_USER', 'None')  , @( 'Principal2', 'db_ddladmin', 'SQL_USER', 'None')

Get-AzSqlDatabaseVulnerabilityAssessmentRuleBaseline `
            -ResourceGroupName "ResourceGroup01" `
            -ServerName "Server01" `
            -DatabaseName "Database01" `
            -RuleId "VA2108" `
            |  Set-AzSqlDatabaseVulnerabilityAssessmentRuleBaseline `
                -ResourceGroupName "ResourceGroup02" `
                -ServerName "Server02" `
                -DatabaseName "Database02"

ResourceGroupName		: ResourceGroup02
ServerName	        	: Server02
DatabaseName	    	: Database02
RuleId		        	: VA2108
RuleAppliesToMaster    	: False
BaselineResult		    : @( 'Principal1', 'db_ddladmin', 'SQL_USER', 'None')  , @( 'Principal2', 'db_ddladmin', 'SQL_USER', 'None')

Пример 3. Настройка базовой базы данных оценки уязвимостей на всех базах данных на сервере

Get-AzSqlDatabase -ResourceGroupName "ResourceGroup01" `
            -ServerName "Server01" `
            | Where-Object {$_.DatabaseName -ne "master"}  `
            | Set-AzSqlDatabaseVulnerabilityAssessmentRuleBaseline `
                -RuleId "VA2108" `
                -BaselineResult @( 'Principal1', 'db_ddladmin', 'SQL_USER', 'None')  , @( 'Principal2', 'db_ddladmin', 'SQL_USER', 'None')

ResourceGroupName		: ResourceGroup01
ServerName	        	: Server01
DatabaseName	    	: Database01
RuleId		        	: VA2108
RuleAppliesToMaster    	: False
BaselineResult		    : @( 'Principal1', 'db_ddladmin', 'SQL_USER', 'None')  , @( 'Principal2', 'db_ddladmin', 'SQL_USER', 'None')

ResourceGroupName		: ResourceGroup01
ServerName	        	: Server01
DatabaseName	    	: Database02
RuleId		        	: VA2108
RuleAppliesToMaster    	: False
BaselineResult		    : @( 'Principal1', 'db_ddladmin', 'SQL_USER', 'None')  , @( 'Principal2', 'db_ddladmin', 'SQL_USER', 'None')

Параметры

-BaselineResult

Результаты, заданные в качестве базового плана для правила во всех будущих сканированиях

Type:String[][]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Confirm

Запрос подтверждения перед выполнением командлета.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DatabaseName

База данных SQL имя.

Type:String
Position:2
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-DefaultProfile

Учетные данные, учетная запись, клиент и подписка, используемые для взаимодействия с Azure.

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Базовый объект правила оценки уязвимостей для задания

Type:VulnerabilityAssessmentRuleBaselineModel
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ResourceGroupName

Имя группы ресурсов.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-RuleAppliesToMaster

Указывает, что базовые показатели должны применяться к базе данных master. Это необходимо только в том случае, если параметры уровня базы данных указывают учетную запись хранения, отличную от учетной записи хранения, указанной в параметрах уровня сервера.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-RuleId

Идентификатор правила, определяющий правило для задания базовых результатов.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ServerName

База данных SQL имя сервера.

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Показывает, что произойдет при запуске командлета. Командлет не выполняется.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Входные данные

String

VulnerabilityAssessmentRuleBaselineModel

String[][]

SwitchParameter

Выходные данные

DatabaseVulnerabilityAssessmentRuleBaselineModel