SqlPoolVulnerabilityAssessmentBaselineArgs

data class SqlPoolVulnerabilityAssessmentBaselineArgs(val baselines: Output<List<SqlPoolVulnerabilityAssessmentBaselineBaselineArgs>>? = null, val name: Output<String>? = null, val ruleName: Output<String>? = null, val sqlPoolVulnerabilityAssessmentId: Output<String>? = null) : ConvertibleToJava<SqlPoolVulnerabilityAssessmentBaselineArgs>

Manages a Synapse SQL Pool Vulnerability Assessment Rule Baseline.

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.storage.Account;
import com.pulumi.azure.storage.AccountArgs;
import com.pulumi.azure.storage.DataLakeGen2Filesystem;
import com.pulumi.azure.storage.DataLakeGen2FilesystemArgs;
import com.pulumi.azure.synapse.Workspace;
import com.pulumi.azure.synapse.WorkspaceArgs;
import com.pulumi.azure.synapse.inputs.WorkspaceIdentityArgs;
import com.pulumi.azure.synapse.SqlPool;
import com.pulumi.azure.synapse.SqlPoolArgs;
import com.pulumi.azure.storage.Container;
import com.pulumi.azure.storage.ContainerArgs;
import com.pulumi.azure.synapse.SqlPoolSecurityAlertPolicy;
import com.pulumi.azure.synapse.SqlPoolSecurityAlertPolicyArgs;
import com.pulumi.azure.synapse.SqlPoolVulnerabilityAssessment;
import com.pulumi.azure.synapse.SqlPoolVulnerabilityAssessmentArgs;
import com.pulumi.azure.synapse.SqlPoolVulnerabilityAssessmentBaseline;
import com.pulumi.azure.synapse.SqlPoolVulnerabilityAssessmentBaselineArgs;
import com.pulumi.azure.synapse.inputs.SqlPoolVulnerabilityAssessmentBaselineBaselineArgs;
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 example = new ResourceGroup("example", ResourceGroupArgs.builder()
.name("example")
.location("west europe")
.build());
var exampleAccount = new Account("exampleAccount", AccountArgs.builder()
.name("example")
.resourceGroupName(example.name())
.location(example.location())
.accountKind("BlobStorage")
.accountTier("Standard")
.accountReplicationType("LRS")
.build());
var exampleDataLakeGen2Filesystem = new DataLakeGen2Filesystem("exampleDataLakeGen2Filesystem", DataLakeGen2FilesystemArgs.builder()
.name("example")
.storageAccountId(exampleAccount.id())
.build());
var exampleWorkspace = new Workspace("exampleWorkspace", WorkspaceArgs.builder()
.name("example")
.resourceGroupName(example.name())
.location(example.location())
.storageDataLakeGen2FilesystemId(exampleDataLakeGen2Filesystem.id())
.sqlAdministratorLogin("sqladminuser")
.sqlAdministratorLoginPassword("H@Sh1CoR3!")
.identity(WorkspaceIdentityArgs.builder()
.type("SystemAssigned")
.build())
.build());
var exampleSqlPool = new SqlPool("exampleSqlPool", SqlPoolArgs.builder()
.name("example")
.synapseWorkspaceId(exampleWorkspace.id())
.skuName("DW100c")
.createMode("Default")
.build());
var exampleContainer = new Container("exampleContainer", ContainerArgs.builder()
.name("example")
.storageAccountName(exampleAccount.name())
.containerAccessType("private")
.build());
var exampleSqlPoolSecurityAlertPolicy = new SqlPoolSecurityAlertPolicy("exampleSqlPoolSecurityAlertPolicy", SqlPoolSecurityAlertPolicyArgs.builder()
.sqlPoolId(exampleSqlPool.id())
.policyState("Enabled")
.storageEndpoint(exampleAccount.primaryBlobEndpoint())
.storageAccountAccessKey(exampleAccount.primaryAccessKey())
.build());
var exampleSqlPoolVulnerabilityAssessment = new SqlPoolVulnerabilityAssessment("exampleSqlPoolVulnerabilityAssessment", SqlPoolVulnerabilityAssessmentArgs.builder()
.sqlPoolSecurityAlertPolicyId(exampleSqlPoolSecurityAlertPolicy.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 exampleSqlPoolVulnerabilityAssessmentBaseline = new SqlPoolVulnerabilityAssessmentBaseline("exampleSqlPoolVulnerabilityAssessmentBaseline", SqlPoolVulnerabilityAssessmentBaselineArgs.builder()
.name("default")
.ruleName("VA1017")
.sqlPoolVulnerabilityAssessmentId(exampleSqlPoolVulnerabilityAssessment.id())
.baselines(
SqlPoolVulnerabilityAssessmentBaselineBaselineArgs.builder()
.results(
"userA",
"SELECT")
.build(),
SqlPoolVulnerabilityAssessmentBaselineBaselineArgs.builder()
.results(
"userB",
"SELECT")
.build())
.build());
}
}

Import

Synapse SQL Pool Vulnerability Assessment Rule Baselines can be imported using the resource id, e.g.

$ pulumi import azure:synapse/sqlPoolVulnerabilityAssessmentBaseline:SqlPoolVulnerabilityAssessmentBaseline example /subscriptions/12345678-1234-9876-4563-123456789012/resourceGroups/resGroup1/providers/Microsoft.Synapse/workspaces/workspace1/sqlPools/sqlPool1/vulnerabilityAssessments/default/rules/rule1/baselines/baseline1

Constructors

fun SqlPoolVulnerabilityAssessmentBaselineArgs(baselines: Output<List<SqlPoolVulnerabilityAssessmentBaselineBaselineArgs>>? = null, name: Output<String>? = null, ruleName: Output<String>? = null, sqlPoolVulnerabilityAssessmentId: Output<String>? = null)

Functions

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

Properties

Link copied to clipboard

One or more baseline blocks as defined below.

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

The name which should be used for this Synapse SQL Pool Vulnerability Assessment Rule Baseline.

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

The ID of the vulnerability assessment rule.

Link copied to clipboard

The ID of the Synapse SQL Pool Vulnerability Assessment. Changing this forces a new Synapse SQL Pool Vulnerability Assessment Rule Baseline to be created.