We recommend using Azure Native.
azure.mssql.ServerExtendedAuditingPolicy
Explore with Pulumi AI
Manages a MS SQL Server Extended Auditing Policy.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = new azure.core.ResourceGroup("example", {
name: "example-resources",
location: "West Europe",
});
const exampleServer = new azure.mssql.Server("example", {
name: "example-sqlserver",
resourceGroupName: example.name,
location: example.location,
version: "12.0",
administratorLogin: "missadministrator",
administratorLoginPassword: "AdminPassword123!",
});
const exampleAccount = new azure.storage.Account("example", {
name: "examplesa",
resourceGroupName: example.name,
location: example.location,
accountTier: "Standard",
accountReplicationType: "LRS",
});
const exampleServerExtendedAuditingPolicy = new azure.mssql.ServerExtendedAuditingPolicy("example", {
serverId: exampleServer.id,
storageEndpoint: exampleAccount.primaryBlobEndpoint,
storageAccountAccessKey: exampleAccount.primaryAccessKey,
storageAccountAccessKeyIsSecondary: false,
retentionInDays: 6,
});
import pulumi
import pulumi_azure as azure
example = azure.core.ResourceGroup("example",
name="example-resources",
location="West Europe")
example_server = azure.mssql.Server("example",
name="example-sqlserver",
resource_group_name=example.name,
location=example.location,
version="12.0",
administrator_login="missadministrator",
administrator_login_password="AdminPassword123!")
example_account = azure.storage.Account("example",
name="examplesa",
resource_group_name=example.name,
location=example.location,
account_tier="Standard",
account_replication_type="LRS")
example_server_extended_auditing_policy = azure.mssql.ServerExtendedAuditingPolicy("example",
server_id=example_server.id,
storage_endpoint=example_account.primary_blob_endpoint,
storage_account_access_key=example_account.primary_access_key,
storage_account_access_key_is_secondary=False,
retention_in_days=6)
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/mssql"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
Name: pulumi.String("example-resources"),
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
exampleServer, err := mssql.NewServer(ctx, "example", &mssql.ServerArgs{
Name: pulumi.String("example-sqlserver"),
ResourceGroupName: example.Name,
Location: example.Location,
Version: pulumi.String("12.0"),
AdministratorLogin: pulumi.String("missadministrator"),
AdministratorLoginPassword: pulumi.String("AdminPassword123!"),
})
if err != nil {
return err
}
exampleAccount, err := storage.NewAccount(ctx, "example", &storage.AccountArgs{
Name: pulumi.String("examplesa"),
ResourceGroupName: example.Name,
Location: example.Location,
AccountTier: pulumi.String("Standard"),
AccountReplicationType: pulumi.String("LRS"),
})
if err != nil {
return err
}
_, err = mssql.NewServerExtendedAuditingPolicy(ctx, "example", &mssql.ServerExtendedAuditingPolicyArgs{
ServerId: exampleServer.ID(),
StorageEndpoint: exampleAccount.PrimaryBlobEndpoint,
StorageAccountAccessKey: exampleAccount.PrimaryAccessKey,
StorageAccountAccessKeyIsSecondary: pulumi.Bool(false),
RetentionInDays: pulumi.Int(6),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var example = new Azure.Core.ResourceGroup("example", new()
{
Name = "example-resources",
Location = "West Europe",
});
var exampleServer = new Azure.MSSql.Server("example", new()
{
Name = "example-sqlserver",
ResourceGroupName = example.Name,
Location = example.Location,
Version = "12.0",
AdministratorLogin = "missadministrator",
AdministratorLoginPassword = "AdminPassword123!",
});
var exampleAccount = new Azure.Storage.Account("example", new()
{
Name = "examplesa",
ResourceGroupName = example.Name,
Location = example.Location,
AccountTier = "Standard",
AccountReplicationType = "LRS",
});
var exampleServerExtendedAuditingPolicy = new Azure.MSSql.ServerExtendedAuditingPolicy("example", new()
{
ServerId = exampleServer.Id,
StorageEndpoint = exampleAccount.PrimaryBlobEndpoint,
StorageAccountAccessKey = exampleAccount.PrimaryAccessKey,
StorageAccountAccessKeyIsSecondary = false,
RetentionInDays = 6,
});
});
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.mssql.Server;
import com.pulumi.azure.mssql.ServerArgs;
import com.pulumi.azure.storage.Account;
import com.pulumi.azure.storage.AccountArgs;
import com.pulumi.azure.mssql.ServerExtendedAuditingPolicy;
import com.pulumi.azure.mssql.ServerExtendedAuditingPolicyArgs;
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-resources")
.location("West Europe")
.build());
var exampleServer = new Server("exampleServer", ServerArgs.builder()
.name("example-sqlserver")
.resourceGroupName(example.name())
.location(example.location())
.version("12.0")
.administratorLogin("missadministrator")
.administratorLoginPassword("AdminPassword123!")
.build());
var exampleAccount = new Account("exampleAccount", AccountArgs.builder()
.name("examplesa")
.resourceGroupName(example.name())
.location(example.location())
.accountTier("Standard")
.accountReplicationType("LRS")
.build());
var exampleServerExtendedAuditingPolicy = new ServerExtendedAuditingPolicy("exampleServerExtendedAuditingPolicy", ServerExtendedAuditingPolicyArgs.builder()
.serverId(exampleServer.id())
.storageEndpoint(exampleAccount.primaryBlobEndpoint())
.storageAccountAccessKey(exampleAccount.primaryAccessKey())
.storageAccountAccessKeyIsSecondary(false)
.retentionInDays(6)
.build());
}
}
resources:
example:
type: azure:core:ResourceGroup
properties:
name: example-resources
location: West Europe
exampleServer:
type: azure:mssql:Server
name: example
properties:
name: example-sqlserver
resourceGroupName: ${example.name}
location: ${example.location}
version: '12.0'
administratorLogin: missadministrator
administratorLoginPassword: AdminPassword123!
exampleAccount:
type: azure:storage:Account
name: example
properties:
name: examplesa
resourceGroupName: ${example.name}
location: ${example.location}
accountTier: Standard
accountReplicationType: LRS
exampleServerExtendedAuditingPolicy:
type: azure:mssql:ServerExtendedAuditingPolicy
name: example
properties:
serverId: ${exampleServer.id}
storageEndpoint: ${exampleAccount.primaryBlobEndpoint}
storageAccountAccessKey: ${exampleAccount.primaryAccessKey}
storageAccountAccessKeyIsSecondary: false
retentionInDays: 6
With Storage Account Behind VNet And Firewall
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const primary = azure.core.getSubscription({});
const example = azure.core.getClientConfig({});
const exampleResourceGroup = new azure.core.ResourceGroup("example", {
name: "example",
location: "West Europe",
});
const exampleVirtualNetwork = new azure.network.VirtualNetwork("example", {
name: "virtnetname-1",
addressSpaces: ["10.0.0.0/16"],
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
});
const exampleSubnet = new azure.network.Subnet("example", {
name: "subnetname-1",
resourceGroupName: exampleResourceGroup.name,
virtualNetworkName: exampleVirtualNetwork.name,
addressPrefixes: ["10.0.2.0/24"],
serviceEndpoints: [
"Microsoft.Sql",
"Microsoft.Storage",
],
enforcePrivateLinkEndpointNetworkPolicies: true,
});
const exampleServer = new azure.mssql.Server("example", {
name: "example-sqlserver",
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
version: "12.0",
administratorLogin: "missadministrator",
administratorLoginPassword: "AdminPassword123!",
minimumTlsVersion: "1.2",
identity: {
type: "SystemAssigned",
},
});
const exampleAssignment = new azure.authorization.Assignment("example", {
scope: primary.then(primary => primary.id),
roleDefinitionName: "Storage Blob Data Contributor",
principalId: exampleServer.identity.apply(identity => identity?.principalId),
});
const sqlvnetrule = new azure.sql.VirtualNetworkRule("sqlvnetrule", {
name: "sql-vnet-rule",
resourceGroupName: exampleResourceGroup.name,
serverName: exampleServer.name,
subnetId: exampleSubnet.id,
});
const exampleFirewallRule = new azure.sql.FirewallRule("example", {
name: "FirewallRule1",
resourceGroupName: exampleResourceGroup.name,
serverName: exampleServer.name,
startIpAddress: "0.0.0.0",
endIpAddress: "0.0.0.0",
});
const exampleAccount = new azure.storage.Account("example", {
name: "examplesa",
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
accountTier: "Standard",
accountReplicationType: "LRS",
accountKind: "StorageV2",
allowNestedItemsToBePublic: false,
networkRules: {
defaultAction: "Deny",
ipRules: ["127.0.0.1"],
virtualNetworkSubnetIds: [exampleSubnet.id],
bypasses: ["AzureServices"],
},
identity: {
type: "SystemAssigned",
},
});
const exampleServerExtendedAuditingPolicy = new azure.mssql.ServerExtendedAuditingPolicy("example", {
storageEndpoint: exampleAccount.primaryBlobEndpoint,
serverId: exampleServer.id,
retentionInDays: 6,
logMonitoringEnabled: false,
storageAccountSubscriptionId: primaryAzurermSubscription.subscriptionId,
}, {
dependsOn: [
exampleAssignment,
exampleAccount,
],
});
import pulumi
import pulumi_azure as azure
primary = azure.core.get_subscription()
example = azure.core.get_client_config()
example_resource_group = azure.core.ResourceGroup("example",
name="example",
location="West Europe")
example_virtual_network = azure.network.VirtualNetwork("example",
name="virtnetname-1",
address_spaces=["10.0.0.0/16"],
location=example_resource_group.location,
resource_group_name=example_resource_group.name)
example_subnet = azure.network.Subnet("example",
name="subnetname-1",
resource_group_name=example_resource_group.name,
virtual_network_name=example_virtual_network.name,
address_prefixes=["10.0.2.0/24"],
service_endpoints=[
"Microsoft.Sql",
"Microsoft.Storage",
],
enforce_private_link_endpoint_network_policies=True)
example_server = azure.mssql.Server("example",
name="example-sqlserver",
resource_group_name=example_resource_group.name,
location=example_resource_group.location,
version="12.0",
administrator_login="missadministrator",
administrator_login_password="AdminPassword123!",
minimum_tls_version="1.2",
identity=azure.mssql.ServerIdentityArgs(
type="SystemAssigned",
))
example_assignment = azure.authorization.Assignment("example",
scope=primary.id,
role_definition_name="Storage Blob Data Contributor",
principal_id=example_server.identity.principal_id)
sqlvnetrule = azure.sql.VirtualNetworkRule("sqlvnetrule",
name="sql-vnet-rule",
resource_group_name=example_resource_group.name,
server_name=example_server.name,
subnet_id=example_subnet.id)
example_firewall_rule = azure.sql.FirewallRule("example",
name="FirewallRule1",
resource_group_name=example_resource_group.name,
server_name=example_server.name,
start_ip_address="0.0.0.0",
end_ip_address="0.0.0.0")
example_account = azure.storage.Account("example",
name="examplesa",
resource_group_name=example_resource_group.name,
location=example_resource_group.location,
account_tier="Standard",
account_replication_type="LRS",
account_kind="StorageV2",
allow_nested_items_to_be_public=False,
network_rules=azure.storage.AccountNetworkRulesArgs(
default_action="Deny",
ip_rules=["127.0.0.1"],
virtual_network_subnet_ids=[example_subnet.id],
bypasses=["AzureServices"],
),
identity=azure.storage.AccountIdentityArgs(
type="SystemAssigned",
))
example_server_extended_auditing_policy = azure.mssql.ServerExtendedAuditingPolicy("example",
storage_endpoint=example_account.primary_blob_endpoint,
server_id=example_server.id,
retention_in_days=6,
log_monitoring_enabled=False,
storage_account_subscription_id=primary_azurerm_subscription["subscriptionId"],
opts=pulumi.ResourceOptions(depends_on=[
example_assignment,
example_account,
]))
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/authorization"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/mssql"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/sql"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
primary, err := core.LookupSubscription(ctx, nil, nil)
if err != nil {
return err
}
_, err = core.GetClientConfig(ctx, nil, nil)
if err != nil {
return err
}
exampleResourceGroup, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
Name: pulumi.String("example"),
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
Name: pulumi.String("virtnetname-1"),
AddressSpaces: pulumi.StringArray{
pulumi.String("10.0.0.0/16"),
},
Location: exampleResourceGroup.Location,
ResourceGroupName: exampleResourceGroup.Name,
})
if err != nil {
return err
}
exampleSubnet, err := network.NewSubnet(ctx, "example", &network.SubnetArgs{
Name: pulumi.String("subnetname-1"),
ResourceGroupName: exampleResourceGroup.Name,
VirtualNetworkName: exampleVirtualNetwork.Name,
AddressPrefixes: pulumi.StringArray{
pulumi.String("10.0.2.0/24"),
},
ServiceEndpoints: pulumi.StringArray{
pulumi.String("Microsoft.Sql"),
pulumi.String("Microsoft.Storage"),
},
EnforcePrivateLinkEndpointNetworkPolicies: pulumi.Bool(true),
})
if err != nil {
return err
}
exampleServer, err := mssql.NewServer(ctx, "example", &mssql.ServerArgs{
Name: pulumi.String("example-sqlserver"),
ResourceGroupName: exampleResourceGroup.Name,
Location: exampleResourceGroup.Location,
Version: pulumi.String("12.0"),
AdministratorLogin: pulumi.String("missadministrator"),
AdministratorLoginPassword: pulumi.String("AdminPassword123!"),
MinimumTlsVersion: pulumi.String("1.2"),
Identity: &mssql.ServerIdentityArgs{
Type: pulumi.String("SystemAssigned"),
},
})
if err != nil {
return err
}
exampleAssignment, err := authorization.NewAssignment(ctx, "example", &authorization.AssignmentArgs{
Scope: pulumi.String(primary.Id),
RoleDefinitionName: pulumi.String("Storage Blob Data Contributor"),
PrincipalId: exampleServer.Identity.ApplyT(func(identity mssql.ServerIdentity) (*string, error) {
return &identity.PrincipalId, nil
}).(pulumi.StringPtrOutput),
})
if err != nil {
return err
}
_, err = sql.NewVirtualNetworkRule(ctx, "sqlvnetrule", &sql.VirtualNetworkRuleArgs{
Name: pulumi.String("sql-vnet-rule"),
ResourceGroupName: exampleResourceGroup.Name,
ServerName: exampleServer.Name,
SubnetId: exampleSubnet.ID(),
})
if err != nil {
return err
}
_, err = sql.NewFirewallRule(ctx, "example", &sql.FirewallRuleArgs{
Name: pulumi.String("FirewallRule1"),
ResourceGroupName: exampleResourceGroup.Name,
ServerName: exampleServer.Name,
StartIpAddress: pulumi.String("0.0.0.0"),
EndIpAddress: pulumi.String("0.0.0.0"),
})
if err != nil {
return err
}
exampleAccount, err := storage.NewAccount(ctx, "example", &storage.AccountArgs{
Name: pulumi.String("examplesa"),
ResourceGroupName: exampleResourceGroup.Name,
Location: exampleResourceGroup.Location,
AccountTier: pulumi.String("Standard"),
AccountReplicationType: pulumi.String("LRS"),
AccountKind: pulumi.String("StorageV2"),
AllowNestedItemsToBePublic: pulumi.Bool(false),
NetworkRules: &storage.AccountNetworkRulesTypeArgs{
DefaultAction: pulumi.String("Deny"),
IpRules: pulumi.StringArray{
pulumi.String("127.0.0.1"),
},
VirtualNetworkSubnetIds: pulumi.StringArray{
exampleSubnet.ID(),
},
Bypasses: pulumi.StringArray{
pulumi.String("AzureServices"),
},
},
Identity: &storage.AccountIdentityArgs{
Type: pulumi.String("SystemAssigned"),
},
})
if err != nil {
return err
}
_, err = mssql.NewServerExtendedAuditingPolicy(ctx, "example", &mssql.ServerExtendedAuditingPolicyArgs{
StorageEndpoint: exampleAccount.PrimaryBlobEndpoint,
ServerId: exampleServer.ID(),
RetentionInDays: pulumi.Int(6),
LogMonitoringEnabled: pulumi.Bool(false),
StorageAccountSubscriptionId: pulumi.Any(primaryAzurermSubscription.SubscriptionId),
}, pulumi.DependsOn([]pulumi.Resource{
exampleAssignment,
exampleAccount,
}))
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var primary = Azure.Core.GetSubscription.Invoke();
var example = Azure.Core.GetClientConfig.Invoke();
var exampleResourceGroup = new Azure.Core.ResourceGroup("example", new()
{
Name = "example",
Location = "West Europe",
});
var exampleVirtualNetwork = new Azure.Network.VirtualNetwork("example", new()
{
Name = "virtnetname-1",
AddressSpaces = new[]
{
"10.0.0.0/16",
},
Location = exampleResourceGroup.Location,
ResourceGroupName = exampleResourceGroup.Name,
});
var exampleSubnet = new Azure.Network.Subnet("example", new()
{
Name = "subnetname-1",
ResourceGroupName = exampleResourceGroup.Name,
VirtualNetworkName = exampleVirtualNetwork.Name,
AddressPrefixes = new[]
{
"10.0.2.0/24",
},
ServiceEndpoints = new[]
{
"Microsoft.Sql",
"Microsoft.Storage",
},
EnforcePrivateLinkEndpointNetworkPolicies = true,
});
var exampleServer = new Azure.MSSql.Server("example", new()
{
Name = "example-sqlserver",
ResourceGroupName = exampleResourceGroup.Name,
Location = exampleResourceGroup.Location,
Version = "12.0",
AdministratorLogin = "missadministrator",
AdministratorLoginPassword = "AdminPassword123!",
MinimumTlsVersion = "1.2",
Identity = new Azure.MSSql.Inputs.ServerIdentityArgs
{
Type = "SystemAssigned",
},
});
var exampleAssignment = new Azure.Authorization.Assignment("example", new()
{
Scope = primary.Apply(getSubscriptionResult => getSubscriptionResult.Id),
RoleDefinitionName = "Storage Blob Data Contributor",
PrincipalId = exampleServer.Identity.Apply(identity => identity?.PrincipalId),
});
var sqlvnetrule = new Azure.Sql.VirtualNetworkRule("sqlvnetrule", new()
{
Name = "sql-vnet-rule",
ResourceGroupName = exampleResourceGroup.Name,
ServerName = exampleServer.Name,
SubnetId = exampleSubnet.Id,
});
var exampleFirewallRule = new Azure.Sql.FirewallRule("example", new()
{
Name = "FirewallRule1",
ResourceGroupName = exampleResourceGroup.Name,
ServerName = exampleServer.Name,
StartIpAddress = "0.0.0.0",
EndIpAddress = "0.0.0.0",
});
var exampleAccount = new Azure.Storage.Account("example", new()
{
Name = "examplesa",
ResourceGroupName = exampleResourceGroup.Name,
Location = exampleResourceGroup.Location,
AccountTier = "Standard",
AccountReplicationType = "LRS",
AccountKind = "StorageV2",
AllowNestedItemsToBePublic = false,
NetworkRules = new Azure.Storage.Inputs.AccountNetworkRulesArgs
{
DefaultAction = "Deny",
IpRules = new[]
{
"127.0.0.1",
},
VirtualNetworkSubnetIds = new[]
{
exampleSubnet.Id,
},
Bypasses = new[]
{
"AzureServices",
},
},
Identity = new Azure.Storage.Inputs.AccountIdentityArgs
{
Type = "SystemAssigned",
},
});
var exampleServerExtendedAuditingPolicy = new Azure.MSSql.ServerExtendedAuditingPolicy("example", new()
{
StorageEndpoint = exampleAccount.PrimaryBlobEndpoint,
ServerId = exampleServer.Id,
RetentionInDays = 6,
LogMonitoringEnabled = false,
StorageAccountSubscriptionId = primaryAzurermSubscription.SubscriptionId,
}, new CustomResourceOptions
{
DependsOn =
{
exampleAssignment,
exampleAccount,
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.CoreFunctions;
import com.pulumi.azure.core.inputs.GetSubscriptionArgs;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.network.VirtualNetwork;
import com.pulumi.azure.network.VirtualNetworkArgs;
import com.pulumi.azure.network.Subnet;
import com.pulumi.azure.network.SubnetArgs;
import com.pulumi.azure.mssql.Server;
import com.pulumi.azure.mssql.ServerArgs;
import com.pulumi.azure.mssql.inputs.ServerIdentityArgs;
import com.pulumi.azure.authorization.Assignment;
import com.pulumi.azure.authorization.AssignmentArgs;
import com.pulumi.azure.sql.VirtualNetworkRule;
import com.pulumi.azure.sql.VirtualNetworkRuleArgs;
import com.pulumi.azure.sql.FirewallRule;
import com.pulumi.azure.sql.FirewallRuleArgs;
import com.pulumi.azure.storage.Account;
import com.pulumi.azure.storage.AccountArgs;
import com.pulumi.azure.storage.inputs.AccountNetworkRulesArgs;
import com.pulumi.azure.storage.inputs.AccountIdentityArgs;
import com.pulumi.azure.mssql.ServerExtendedAuditingPolicy;
import com.pulumi.azure.mssql.ServerExtendedAuditingPolicyArgs;
import com.pulumi.resources.CustomResourceOptions;
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) {
final var primary = CoreFunctions.getSubscription();
final var example = CoreFunctions.getClientConfig();
var exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()
.name("example")
.location("West Europe")
.build());
var exampleVirtualNetwork = new VirtualNetwork("exampleVirtualNetwork", VirtualNetworkArgs.builder()
.name("virtnetname-1")
.addressSpaces("10.0.0.0/16")
.location(exampleResourceGroup.location())
.resourceGroupName(exampleResourceGroup.name())
.build());
var exampleSubnet = new Subnet("exampleSubnet", SubnetArgs.builder()
.name("subnetname-1")
.resourceGroupName(exampleResourceGroup.name())
.virtualNetworkName(exampleVirtualNetwork.name())
.addressPrefixes("10.0.2.0/24")
.serviceEndpoints(
"Microsoft.Sql",
"Microsoft.Storage")
.enforcePrivateLinkEndpointNetworkPolicies(true)
.build());
var exampleServer = new Server("exampleServer", ServerArgs.builder()
.name("example-sqlserver")
.resourceGroupName(exampleResourceGroup.name())
.location(exampleResourceGroup.location())
.version("12.0")
.administratorLogin("missadministrator")
.administratorLoginPassword("AdminPassword123!")
.minimumTlsVersion("1.2")
.identity(ServerIdentityArgs.builder()
.type("SystemAssigned")
.build())
.build());
var exampleAssignment = new Assignment("exampleAssignment", AssignmentArgs.builder()
.scope(primary.applyValue(getSubscriptionResult -> getSubscriptionResult.id()))
.roleDefinitionName("Storage Blob Data Contributor")
.principalId(exampleServer.identity().applyValue(identity -> identity.principalId()))
.build());
var sqlvnetrule = new VirtualNetworkRule("sqlvnetrule", VirtualNetworkRuleArgs.builder()
.name("sql-vnet-rule")
.resourceGroupName(exampleResourceGroup.name())
.serverName(exampleServer.name())
.subnetId(exampleSubnet.id())
.build());
var exampleFirewallRule = new FirewallRule("exampleFirewallRule", FirewallRuleArgs.builder()
.name("FirewallRule1")
.resourceGroupName(exampleResourceGroup.name())
.serverName(exampleServer.name())
.startIpAddress("0.0.0.0")
.endIpAddress("0.0.0.0")
.build());
var exampleAccount = new Account("exampleAccount", AccountArgs.builder()
.name("examplesa")
.resourceGroupName(exampleResourceGroup.name())
.location(exampleResourceGroup.location())
.accountTier("Standard")
.accountReplicationType("LRS")
.accountKind("StorageV2")
.allowNestedItemsToBePublic(false)
.networkRules(AccountNetworkRulesArgs.builder()
.defaultAction("Deny")
.ipRules("127.0.0.1")
.virtualNetworkSubnetIds(exampleSubnet.id())
.bypasses("AzureServices")
.build())
.identity(AccountIdentityArgs.builder()
.type("SystemAssigned")
.build())
.build());
var exampleServerExtendedAuditingPolicy = new ServerExtendedAuditingPolicy("exampleServerExtendedAuditingPolicy", ServerExtendedAuditingPolicyArgs.builder()
.storageEndpoint(exampleAccount.primaryBlobEndpoint())
.serverId(exampleServer.id())
.retentionInDays(6)
.logMonitoringEnabled(false)
.storageAccountSubscriptionId(primaryAzurermSubscription.subscriptionId())
.build(), CustomResourceOptions.builder()
.dependsOn(
exampleAssignment,
exampleAccount)
.build());
}
}
resources:
exampleResourceGroup:
type: azure:core:ResourceGroup
name: example
properties:
name: example
location: West Europe
exampleVirtualNetwork:
type: azure:network:VirtualNetwork
name: example
properties:
name: virtnetname-1
addressSpaces:
- 10.0.0.0/16
location: ${exampleResourceGroup.location}
resourceGroupName: ${exampleResourceGroup.name}
exampleSubnet:
type: azure:network:Subnet
name: example
properties:
name: subnetname-1
resourceGroupName: ${exampleResourceGroup.name}
virtualNetworkName: ${exampleVirtualNetwork.name}
addressPrefixes:
- 10.0.2.0/24
serviceEndpoints:
- Microsoft.Sql
- Microsoft.Storage
enforcePrivateLinkEndpointNetworkPolicies: true
exampleAssignment:
type: azure:authorization:Assignment
name: example
properties:
scope: ${primary.id}
roleDefinitionName: Storage Blob Data Contributor
principalId: ${exampleServer.identity.principalId}
exampleServer:
type: azure:mssql:Server
name: example
properties:
name: example-sqlserver
resourceGroupName: ${exampleResourceGroup.name}
location: ${exampleResourceGroup.location}
version: '12.0'
administratorLogin: missadministrator
administratorLoginPassword: AdminPassword123!
minimumTlsVersion: '1.2'
identity:
type: SystemAssigned
sqlvnetrule:
type: azure:sql:VirtualNetworkRule
properties:
name: sql-vnet-rule
resourceGroupName: ${exampleResourceGroup.name}
serverName: ${exampleServer.name}
subnetId: ${exampleSubnet.id}
exampleFirewallRule:
type: azure:sql:FirewallRule
name: example
properties:
name: FirewallRule1
resourceGroupName: ${exampleResourceGroup.name}
serverName: ${exampleServer.name}
startIpAddress: 0.0.0.0
endIpAddress: 0.0.0.0
exampleAccount:
type: azure:storage:Account
name: example
properties:
name: examplesa
resourceGroupName: ${exampleResourceGroup.name}
location: ${exampleResourceGroup.location}
accountTier: Standard
accountReplicationType: LRS
accountKind: StorageV2
allowNestedItemsToBePublic: false
networkRules:
defaultAction: Deny
ipRules:
- 127.0.0.1
virtualNetworkSubnetIds:
- ${exampleSubnet.id}
bypasses:
- AzureServices
identity:
type: SystemAssigned
exampleServerExtendedAuditingPolicy:
type: azure:mssql:ServerExtendedAuditingPolicy
name: example
properties:
storageEndpoint: ${exampleAccount.primaryBlobEndpoint}
serverId: ${exampleServer.id}
retentionInDays: 6
logMonitoringEnabled: false
storageAccountSubscriptionId: ${primaryAzurermSubscription.subscriptionId}
options:
dependson:
- ${exampleAssignment}
- ${exampleAccount}
variables:
primary:
fn::invoke:
Function: azure:core:getSubscription
Arguments: {}
example:
fn::invoke:
Function: azure:core:getClientConfig
Arguments: {}
Create ServerExtendedAuditingPolicy Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new ServerExtendedAuditingPolicy(name: string, args: ServerExtendedAuditingPolicyArgs, opts?: CustomResourceOptions);
@overload
def ServerExtendedAuditingPolicy(resource_name: str,
args: ServerExtendedAuditingPolicyArgs,
opts: Optional[ResourceOptions] = None)
@overload
def ServerExtendedAuditingPolicy(resource_name: str,
opts: Optional[ResourceOptions] = None,
server_id: Optional[str] = None,
audit_actions_and_groups: Optional[Sequence[str]] = None,
enabled: Optional[bool] = None,
log_monitoring_enabled: Optional[bool] = None,
predicate_expression: Optional[str] = None,
retention_in_days: Optional[int] = None,
storage_account_access_key: Optional[str] = None,
storage_account_access_key_is_secondary: Optional[bool] = None,
storage_account_subscription_id: Optional[str] = None,
storage_endpoint: Optional[str] = None)
func NewServerExtendedAuditingPolicy(ctx *Context, name string, args ServerExtendedAuditingPolicyArgs, opts ...ResourceOption) (*ServerExtendedAuditingPolicy, error)
public ServerExtendedAuditingPolicy(string name, ServerExtendedAuditingPolicyArgs args, CustomResourceOptions? opts = null)
public ServerExtendedAuditingPolicy(String name, ServerExtendedAuditingPolicyArgs args)
public ServerExtendedAuditingPolicy(String name, ServerExtendedAuditingPolicyArgs args, CustomResourceOptions options)
type: azure:mssql:ServerExtendedAuditingPolicy
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args ServerExtendedAuditingPolicyArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args ServerExtendedAuditingPolicyArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args ServerExtendedAuditingPolicyArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ServerExtendedAuditingPolicyArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ServerExtendedAuditingPolicyArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var serverExtendedAuditingPolicyResource = new Azure.MSSql.ServerExtendedAuditingPolicy("serverExtendedAuditingPolicyResource", new()
{
ServerId = "string",
AuditActionsAndGroups = new[]
{
"string",
},
Enabled = false,
LogMonitoringEnabled = false,
PredicateExpression = "string",
RetentionInDays = 0,
StorageAccountAccessKey = "string",
StorageAccountAccessKeyIsSecondary = false,
StorageAccountSubscriptionId = "string",
StorageEndpoint = "string",
});
example, err := mssql.NewServerExtendedAuditingPolicy(ctx, "serverExtendedAuditingPolicyResource", &mssql.ServerExtendedAuditingPolicyArgs{
ServerId: pulumi.String("string"),
AuditActionsAndGroups: pulumi.StringArray{
pulumi.String("string"),
},
Enabled: pulumi.Bool(false),
LogMonitoringEnabled: pulumi.Bool(false),
PredicateExpression: pulumi.String("string"),
RetentionInDays: pulumi.Int(0),
StorageAccountAccessKey: pulumi.String("string"),
StorageAccountAccessKeyIsSecondary: pulumi.Bool(false),
StorageAccountSubscriptionId: pulumi.String("string"),
StorageEndpoint: pulumi.String("string"),
})
var serverExtendedAuditingPolicyResource = new ServerExtendedAuditingPolicy("serverExtendedAuditingPolicyResource", ServerExtendedAuditingPolicyArgs.builder()
.serverId("string")
.auditActionsAndGroups("string")
.enabled(false)
.logMonitoringEnabled(false)
.predicateExpression("string")
.retentionInDays(0)
.storageAccountAccessKey("string")
.storageAccountAccessKeyIsSecondary(false)
.storageAccountSubscriptionId("string")
.storageEndpoint("string")
.build());
server_extended_auditing_policy_resource = azure.mssql.ServerExtendedAuditingPolicy("serverExtendedAuditingPolicyResource",
server_id="string",
audit_actions_and_groups=["string"],
enabled=False,
log_monitoring_enabled=False,
predicate_expression="string",
retention_in_days=0,
storage_account_access_key="string",
storage_account_access_key_is_secondary=False,
storage_account_subscription_id="string",
storage_endpoint="string")
const serverExtendedAuditingPolicyResource = new azure.mssql.ServerExtendedAuditingPolicy("serverExtendedAuditingPolicyResource", {
serverId: "string",
auditActionsAndGroups: ["string"],
enabled: false,
logMonitoringEnabled: false,
predicateExpression: "string",
retentionInDays: 0,
storageAccountAccessKey: "string",
storageAccountAccessKeyIsSecondary: false,
storageAccountSubscriptionId: "string",
storageEndpoint: "string",
});
type: azure:mssql:ServerExtendedAuditingPolicy
properties:
auditActionsAndGroups:
- string
enabled: false
logMonitoringEnabled: false
predicateExpression: string
retentionInDays: 0
serverId: string
storageAccountAccessKey: string
storageAccountAccessKeyIsSecondary: false
storageAccountSubscriptionId: string
storageEndpoint: string
ServerExtendedAuditingPolicy Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The ServerExtendedAuditingPolicy resource accepts the following input properties:
- Server
Id string - The ID of the SQL Server to set the extended auditing policy. Changing this forces a new resource to be created.
- Audit
Actions List<string>And Groups - A list of Actions-Groups and Actions to audit.
- Enabled bool
Whether to enable the extended auditing policy. Possible values are
true
andfalse
. Defaults totrue
.->NOTE: If
enabled
istrue
,storage_endpoint
orlog_monitoring_enabled
are required.- Log
Monitoring boolEnabled - Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its main database audit events to Azure Monitor. Defaults to
true
. - Predicate
Expression string - Specifies condition of where clause when creating an audit.
- Retention
In intDays - The number of days to retain logs for in the storage account. Defaults to
0
. - Storage
Account stringAccess Key - The access key to use for the auditing storage account.
- Storage
Account boolAccess Key Is Secondary - Is
storage_account_access_key
value the storage's secondary key? - Storage
Account stringSubscription Id - The ID of the Subscription containing the Storage Account.
- Storage
Endpoint string - The blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all extended auditing logs.
- Server
Id string - The ID of the SQL Server to set the extended auditing policy. Changing this forces a new resource to be created.
- Audit
Actions []stringAnd Groups - A list of Actions-Groups and Actions to audit.
- Enabled bool
Whether to enable the extended auditing policy. Possible values are
true
andfalse
. Defaults totrue
.->NOTE: If
enabled
istrue
,storage_endpoint
orlog_monitoring_enabled
are required.- Log
Monitoring boolEnabled - Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its main database audit events to Azure Monitor. Defaults to
true
. - Predicate
Expression string - Specifies condition of where clause when creating an audit.
- Retention
In intDays - The number of days to retain logs for in the storage account. Defaults to
0
. - Storage
Account stringAccess Key - The access key to use for the auditing storage account.
- Storage
Account boolAccess Key Is Secondary - Is
storage_account_access_key
value the storage's secondary key? - Storage
Account stringSubscription Id - The ID of the Subscription containing the Storage Account.
- Storage
Endpoint string - The blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all extended auditing logs.
- server
Id String - The ID of the SQL Server to set the extended auditing policy. Changing this forces a new resource to be created.
- audit
Actions List<String>And Groups - A list of Actions-Groups and Actions to audit.
- enabled Boolean
Whether to enable the extended auditing policy. Possible values are
true
andfalse
. Defaults totrue
.->NOTE: If
enabled
istrue
,storage_endpoint
orlog_monitoring_enabled
are required.- log
Monitoring BooleanEnabled - Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its main database audit events to Azure Monitor. Defaults to
true
. - predicate
Expression String - Specifies condition of where clause when creating an audit.
- retention
In IntegerDays - The number of days to retain logs for in the storage account. Defaults to
0
. - storage
Account StringAccess Key - The access key to use for the auditing storage account.
- storage
Account BooleanAccess Key Is Secondary - Is
storage_account_access_key
value the storage's secondary key? - storage
Account StringSubscription Id - The ID of the Subscription containing the Storage Account.
- storage
Endpoint String - The blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all extended auditing logs.
- server
Id string - The ID of the SQL Server to set the extended auditing policy. Changing this forces a new resource to be created.
- audit
Actions string[]And Groups - A list of Actions-Groups and Actions to audit.
- enabled boolean
Whether to enable the extended auditing policy. Possible values are
true
andfalse
. Defaults totrue
.->NOTE: If
enabled
istrue
,storage_endpoint
orlog_monitoring_enabled
are required.- log
Monitoring booleanEnabled - Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its main database audit events to Azure Monitor. Defaults to
true
. - predicate
Expression string - Specifies condition of where clause when creating an audit.
- retention
In numberDays - The number of days to retain logs for in the storage account. Defaults to
0
. - storage
Account stringAccess Key - The access key to use for the auditing storage account.
- storage
Account booleanAccess Key Is Secondary - Is
storage_account_access_key
value the storage's secondary key? - storage
Account stringSubscription Id - The ID of the Subscription containing the Storage Account.
- storage
Endpoint string - The blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all extended auditing logs.
- server_
id str - The ID of the SQL Server to set the extended auditing policy. Changing this forces a new resource to be created.
- audit_
actions_ Sequence[str]and_ groups - A list of Actions-Groups and Actions to audit.
- enabled bool
Whether to enable the extended auditing policy. Possible values are
true
andfalse
. Defaults totrue
.->NOTE: If
enabled
istrue
,storage_endpoint
orlog_monitoring_enabled
are required.- log_
monitoring_ boolenabled - Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its main database audit events to Azure Monitor. Defaults to
true
. - predicate_
expression str - Specifies condition of where clause when creating an audit.
- retention_
in_ intdays - The number of days to retain logs for in the storage account. Defaults to
0
. - storage_
account_ straccess_ key - The access key to use for the auditing storage account.
- storage_
account_ boolaccess_ key_ is_ secondary - Is
storage_account_access_key
value the storage's secondary key? - storage_
account_ strsubscription_ id - The ID of the Subscription containing the Storage Account.
- storage_
endpoint str - The blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all extended auditing logs.
- server
Id String - The ID of the SQL Server to set the extended auditing policy. Changing this forces a new resource to be created.
- audit
Actions List<String>And Groups - A list of Actions-Groups and Actions to audit.
- enabled Boolean
Whether to enable the extended auditing policy. Possible values are
true
andfalse
. Defaults totrue
.->NOTE: If
enabled
istrue
,storage_endpoint
orlog_monitoring_enabled
are required.- log
Monitoring BooleanEnabled - Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its main database audit events to Azure Monitor. Defaults to
true
. - predicate
Expression String - Specifies condition of where clause when creating an audit.
- retention
In NumberDays - The number of days to retain logs for in the storage account. Defaults to
0
. - storage
Account StringAccess Key - The access key to use for the auditing storage account.
- storage
Account BooleanAccess Key Is Secondary - Is
storage_account_access_key
value the storage's secondary key? - storage
Account StringSubscription Id - The ID of the Subscription containing the Storage Account.
- storage
Endpoint String - The blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all extended auditing logs.
Outputs
All input properties are implicitly available as output properties. Additionally, the ServerExtendedAuditingPolicy resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing ServerExtendedAuditingPolicy Resource
Get an existing ServerExtendedAuditingPolicy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: ServerExtendedAuditingPolicyState, opts?: CustomResourceOptions): ServerExtendedAuditingPolicy
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
audit_actions_and_groups: Optional[Sequence[str]] = None,
enabled: Optional[bool] = None,
log_monitoring_enabled: Optional[bool] = None,
predicate_expression: Optional[str] = None,
retention_in_days: Optional[int] = None,
server_id: Optional[str] = None,
storage_account_access_key: Optional[str] = None,
storage_account_access_key_is_secondary: Optional[bool] = None,
storage_account_subscription_id: Optional[str] = None,
storage_endpoint: Optional[str] = None) -> ServerExtendedAuditingPolicy
func GetServerExtendedAuditingPolicy(ctx *Context, name string, id IDInput, state *ServerExtendedAuditingPolicyState, opts ...ResourceOption) (*ServerExtendedAuditingPolicy, error)
public static ServerExtendedAuditingPolicy Get(string name, Input<string> id, ServerExtendedAuditingPolicyState? state, CustomResourceOptions? opts = null)
public static ServerExtendedAuditingPolicy get(String name, Output<String> id, ServerExtendedAuditingPolicyState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Audit
Actions List<string>And Groups - A list of Actions-Groups and Actions to audit.
- Enabled bool
Whether to enable the extended auditing policy. Possible values are
true
andfalse
. Defaults totrue
.->NOTE: If
enabled
istrue
,storage_endpoint
orlog_monitoring_enabled
are required.- Log
Monitoring boolEnabled - Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its main database audit events to Azure Monitor. Defaults to
true
. - Predicate
Expression string - Specifies condition of where clause when creating an audit.
- Retention
In intDays - The number of days to retain logs for in the storage account. Defaults to
0
. - Server
Id string - The ID of the SQL Server to set the extended auditing policy. Changing this forces a new resource to be created.
- Storage
Account stringAccess Key - The access key to use for the auditing storage account.
- Storage
Account boolAccess Key Is Secondary - Is
storage_account_access_key
value the storage's secondary key? - Storage
Account stringSubscription Id - The ID of the Subscription containing the Storage Account.
- Storage
Endpoint string - The blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all extended auditing logs.
- Audit
Actions []stringAnd Groups - A list of Actions-Groups and Actions to audit.
- Enabled bool
Whether to enable the extended auditing policy. Possible values are
true
andfalse
. Defaults totrue
.->NOTE: If
enabled
istrue
,storage_endpoint
orlog_monitoring_enabled
are required.- Log
Monitoring boolEnabled - Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its main database audit events to Azure Monitor. Defaults to
true
. - Predicate
Expression string - Specifies condition of where clause when creating an audit.
- Retention
In intDays - The number of days to retain logs for in the storage account. Defaults to
0
. - Server
Id string - The ID of the SQL Server to set the extended auditing policy. Changing this forces a new resource to be created.
- Storage
Account stringAccess Key - The access key to use for the auditing storage account.
- Storage
Account boolAccess Key Is Secondary - Is
storage_account_access_key
value the storage's secondary key? - Storage
Account stringSubscription Id - The ID of the Subscription containing the Storage Account.
- Storage
Endpoint string - The blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all extended auditing logs.
- audit
Actions List<String>And Groups - A list of Actions-Groups and Actions to audit.
- enabled Boolean
Whether to enable the extended auditing policy. Possible values are
true
andfalse
. Defaults totrue
.->NOTE: If
enabled
istrue
,storage_endpoint
orlog_monitoring_enabled
are required.- log
Monitoring BooleanEnabled - Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its main database audit events to Azure Monitor. Defaults to
true
. - predicate
Expression String - Specifies condition of where clause when creating an audit.
- retention
In IntegerDays - The number of days to retain logs for in the storage account. Defaults to
0
. - server
Id String - The ID of the SQL Server to set the extended auditing policy. Changing this forces a new resource to be created.
- storage
Account StringAccess Key - The access key to use for the auditing storage account.
- storage
Account BooleanAccess Key Is Secondary - Is
storage_account_access_key
value the storage's secondary key? - storage
Account StringSubscription Id - The ID of the Subscription containing the Storage Account.
- storage
Endpoint String - The blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all extended auditing logs.
- audit
Actions string[]And Groups - A list of Actions-Groups and Actions to audit.
- enabled boolean
Whether to enable the extended auditing policy. Possible values are
true
andfalse
. Defaults totrue
.->NOTE: If
enabled
istrue
,storage_endpoint
orlog_monitoring_enabled
are required.- log
Monitoring booleanEnabled - Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its main database audit events to Azure Monitor. Defaults to
true
. - predicate
Expression string - Specifies condition of where clause when creating an audit.
- retention
In numberDays - The number of days to retain logs for in the storage account. Defaults to
0
. - server
Id string - The ID of the SQL Server to set the extended auditing policy. Changing this forces a new resource to be created.
- storage
Account stringAccess Key - The access key to use for the auditing storage account.
- storage
Account booleanAccess Key Is Secondary - Is
storage_account_access_key
value the storage's secondary key? - storage
Account stringSubscription Id - The ID of the Subscription containing the Storage Account.
- storage
Endpoint string - The blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all extended auditing logs.
- audit_
actions_ Sequence[str]and_ groups - A list of Actions-Groups and Actions to audit.
- enabled bool
Whether to enable the extended auditing policy. Possible values are
true
andfalse
. Defaults totrue
.->NOTE: If
enabled
istrue
,storage_endpoint
orlog_monitoring_enabled
are required.- log_
monitoring_ boolenabled - Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its main database audit events to Azure Monitor. Defaults to
true
. - predicate_
expression str - Specifies condition of where clause when creating an audit.
- retention_
in_ intdays - The number of days to retain logs for in the storage account. Defaults to
0
. - server_
id str - The ID of the SQL Server to set the extended auditing policy. Changing this forces a new resource to be created.
- storage_
account_ straccess_ key - The access key to use for the auditing storage account.
- storage_
account_ boolaccess_ key_ is_ secondary - Is
storage_account_access_key
value the storage's secondary key? - storage_
account_ strsubscription_ id - The ID of the Subscription containing the Storage Account.
- storage_
endpoint str - The blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all extended auditing logs.
- audit
Actions List<String>And Groups - A list of Actions-Groups and Actions to audit.
- enabled Boolean
Whether to enable the extended auditing policy. Possible values are
true
andfalse
. Defaults totrue
.->NOTE: If
enabled
istrue
,storage_endpoint
orlog_monitoring_enabled
are required.- log
Monitoring BooleanEnabled - Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its main database audit events to Azure Monitor. Defaults to
true
. - predicate
Expression String - Specifies condition of where clause when creating an audit.
- retention
In NumberDays - The number of days to retain logs for in the storage account. Defaults to
0
. - server
Id String - The ID of the SQL Server to set the extended auditing policy. Changing this forces a new resource to be created.
- storage
Account StringAccess Key - The access key to use for the auditing storage account.
- storage
Account BooleanAccess Key Is Secondary - Is
storage_account_access_key
value the storage's secondary key? - storage
Account StringSubscription Id - The ID of the Subscription containing the Storage Account.
- storage
Endpoint String - The blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all extended auditing logs.
Import
MS SQL Server Extended Auditing Policies can be imported using the resource id
, e.g.
$ pulumi import azure:mssql/serverExtendedAuditingPolicy:ServerExtendedAuditingPolicy example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Sql/servers/sqlServer1/extendedAuditingSettings/default
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Azure Classic pulumi/pulumi-azure
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
azurerm
Terraform Provider.