DatabaseVulnerabilityAssessmentRuleBaselineArgs

data class DatabaseVulnerabilityAssessmentRuleBaselineArgs(val baselineName: Output<String>? = null, val baselineResults: Output<List<DatabaseVulnerabilityAssessmentRuleBaselineBaselineResultArgs>>? = null, val databaseName: Output<String>? = null, val ruleId: Output<String>? = null, val serverVulnerabilityAssessmentId: Output<String>? = null) : ConvertibleToJava<DatabaseVulnerabilityAssessmentRuleBaselineArgs>

Manages a Database Vulnerability Assessment Rule Baseline.

NOTE Database Vulnerability Assessment is currently only available for MS SQL databases.

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.sql.SqlServer;
import com.pulumi.azure.sql.SqlServerArgs;
import com.pulumi.azure.storage.Account;
import com.pulumi.azure.storage.AccountArgs;
import com.pulumi.azure.storage.Container;
import com.pulumi.azure.storage.ContainerArgs;
import com.pulumi.azure.mssql.ServerSecurityAlertPolicy;
import com.pulumi.azure.mssql.ServerSecurityAlertPolicyArgs;
import com.pulumi.azure.sql.Database;
import com.pulumi.azure.sql.DatabaseArgs;
import com.pulumi.azure.mssql.ServerVulnerabilityAssessment;
import com.pulumi.azure.mssql.ServerVulnerabilityAssessmentArgs;
import com.pulumi.azure.mssql.DatabaseVulnerabilityAssessmentRuleBaseline;
import com.pulumi.azure.mssql.DatabaseVulnerabilityAssessmentRuleBaselineArgs;
import com.pulumi.azure.mssql.inputs.DatabaseVulnerabilityAssessmentRuleBaselineBaselineResultArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()
.location("West Europe")
.build());
var exampleSqlServer = new SqlServer("exampleSqlServer", SqlServerArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.location(exampleResourceGroup.location())
.version("12.0")
.administratorLogin("4dm1n157r470r")
.administratorLoginPassword("4-v3ry-53cr37-p455w0rd")
.build());
var exampleAccount = new Account("exampleAccount", AccountArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.location(exampleResourceGroup.location())
.accountTier("Standard")
.accountReplicationType("GRS")
.build());
var exampleContainer = new Container("exampleContainer", ContainerArgs.builder()
.storageAccountName(exampleAccount.name())
.containerAccessType("private")
.build());
var exampleServerSecurityAlertPolicy = new ServerSecurityAlertPolicy("exampleServerSecurityAlertPolicy", ServerSecurityAlertPolicyArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.serverName(exampleSqlServer.name())
.state("Enabled")
.build());
var exampleDatabase = new Database("exampleDatabase", DatabaseArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.serverName(exampleSqlServer.name())
.location(exampleResourceGroup.location())
.edition("Standard")
.build());
var exampleServerVulnerabilityAssessment = new ServerVulnerabilityAssessment("exampleServerVulnerabilityAssessment", ServerVulnerabilityAssessmentArgs.builder()
.serverSecurityAlertPolicyId(exampleServerSecurityAlertPolicy.id())
.storageContainerPath(Output.tuple(exampleAccount.primaryBlobEndpoint(), exampleContainer.name()).applyValue(values -> {
var primaryBlobEndpoint = values.t1;
var name = values.t2;
return String.format("%s%s/", primaryBlobEndpoint,name);
}))
.storageAccountAccessKey(exampleAccount.primaryAccessKey())
.build());
var exampleDatabaseVulnerabilityAssessmentRuleBaseline = new DatabaseVulnerabilityAssessmentRuleBaseline("exampleDatabaseVulnerabilityAssessmentRuleBaseline", DatabaseVulnerabilityAssessmentRuleBaselineArgs.builder()
.serverVulnerabilityAssessmentId(exampleServerVulnerabilityAssessment.id())
.databaseName(exampleDatabase.name())
.ruleId("VA2065")
.baselineName("master")
.baselineResults(
DatabaseVulnerabilityAssessmentRuleBaselineBaselineResultArgs.builder()
.results(
"allowedip1",
"123.123.123.123",
"123.123.123.123")
.build(),
DatabaseVulnerabilityAssessmentRuleBaselineBaselineResultArgs.builder()
.results(
"allowedip2",
"255.255.255.255",
"255.255.255.255")
.build())
.build());
}
}

Import

Database Vulnerability Assessment Rule Baseline can be imported using the resource id, e.g.

$ pulumi import azure:mssql/databaseVulnerabilityAssessmentRuleBaseline:DatabaseVulnerabilityAssessmentRuleBaseline example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acceptanceTestResourceGroup1/providers/Microsoft.Sql/servers/mssqlserver/databases/mysqldatabase/vulnerabilityAssessments/Default/rules/VA2065/baselines/master

Constructors

fun DatabaseVulnerabilityAssessmentRuleBaselineArgs(baselineName: Output<String>? = null, baselineResults: Output<List<DatabaseVulnerabilityAssessmentRuleBaselineBaselineResultArgs>>? = null, databaseName: Output<String>? = null, ruleId: Output<String>? = null, serverVulnerabilityAssessmentId: Output<String>? = null)

Functions

Link copied to clipboard
open override fun toJava(): DatabaseVulnerabilityAssessmentRuleBaselineArgs

Properties

Link copied to clipboard
val baselineName: Output<String>? = null

The name of the vulnerability assessment rule baseline. Valid options are default and master. default implies a baseline on a database level rule and master for server level rule. Defaults to default. Changing this forces a new resource to be created.

Link copied to clipboard

A baseline_result block as documented below. Multiple blocks can be defined.

Link copied to clipboard
val databaseName: Output<String>? = null

Specifies the name of the MS SQL Database. Changing this forces a new resource to be created.

Link copied to clipboard
val ruleId: Output<String>? = null

The vulnerability assessment rule ID. Changing this forces a new resource to be created.

Link copied to clipboard

The Vulnerability Assessment ID of the MS SQL Server. Changing this forces a new resource to be created.