azure-native.dbforpostgresql.ServerSecurityAlertPolicy
Explore with Pulumi AI
A server security alert policy. API Version: 2017-12-01.
Example Usage
Update a server's threat detection policy with all parameters
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var serverSecurityAlertPolicy = new AzureNative.DBforPostgreSQL.ServerSecurityAlertPolicy("serverSecurityAlertPolicy", new()
    {
        DisabledAlerts = new[]
        {
            "Access_Anomaly",
            "Usage_Anomaly",
        },
        EmailAccountAdmins = true,
        EmailAddresses = new[]
        {
            "testSecurityAlert@microsoft.com",
        },
        ResourceGroupName = "securityalert-4799",
        RetentionDays = 5,
        SecurityAlertPolicyName = "Default",
        ServerName = "securityalert-6440",
        State = AzureNative.DBforPostgreSQL.ServerSecurityAlertPolicyState.Enabled,
        StorageAccountAccessKey = "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
        StorageEndpoint = "https://mystorage.blob.core.windows.net",
    });
});
package main
import (
	dbforpostgresql "github.com/pulumi/pulumi-azure-native-sdk/dbforpostgresql"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dbforpostgresql.NewServerSecurityAlertPolicy(ctx, "serverSecurityAlertPolicy", &dbforpostgresql.ServerSecurityAlertPolicyArgs{
			DisabledAlerts: pulumi.StringArray{
				pulumi.String("Access_Anomaly"),
				pulumi.String("Usage_Anomaly"),
			},
			EmailAccountAdmins: pulumi.Bool(true),
			EmailAddresses: pulumi.StringArray{
				pulumi.String("testSecurityAlert@microsoft.com"),
			},
			ResourceGroupName:       pulumi.String("securityalert-4799"),
			RetentionDays:           pulumi.Int(5),
			SecurityAlertPolicyName: pulumi.String("Default"),
			ServerName:              pulumi.String("securityalert-6440"),
			State:                   dbforpostgresql.ServerSecurityAlertPolicyStateEnabled,
			StorageAccountAccessKey: pulumi.String("sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD=="),
			StorageEndpoint:         pulumi.String("https://mystorage.blob.core.windows.net"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dbforpostgresql.ServerSecurityAlertPolicy;
import com.pulumi.azurenative.dbforpostgresql.ServerSecurityAlertPolicyArgs;
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 serverSecurityAlertPolicy = new ServerSecurityAlertPolicy("serverSecurityAlertPolicy", ServerSecurityAlertPolicyArgs.builder()        
            .disabledAlerts(            
                "Access_Anomaly",
                "Usage_Anomaly")
            .emailAccountAdmins(true)
            .emailAddresses("testSecurityAlert@microsoft.com")
            .resourceGroupName("securityalert-4799")
            .retentionDays(5)
            .securityAlertPolicyName("Default")
            .serverName("securityalert-6440")
            .state("Enabled")
            .storageAccountAccessKey("sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==")
            .storageEndpoint("https://mystorage.blob.core.windows.net")
            .build());
    }
}
import pulumi
import pulumi_azure_native as azure_native
server_security_alert_policy = azure_native.dbforpostgresql.ServerSecurityAlertPolicy("serverSecurityAlertPolicy",
    disabled_alerts=[
        "Access_Anomaly",
        "Usage_Anomaly",
    ],
    email_account_admins=True,
    email_addresses=["testSecurityAlert@microsoft.com"],
    resource_group_name="securityalert-4799",
    retention_days=5,
    security_alert_policy_name="Default",
    server_name="securityalert-6440",
    state=azure_native.dbforpostgresql.ServerSecurityAlertPolicyState.ENABLED,
    storage_account_access_key="sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
    storage_endpoint="https://mystorage.blob.core.windows.net")
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const serverSecurityAlertPolicy = new azure_native.dbforpostgresql.ServerSecurityAlertPolicy("serverSecurityAlertPolicy", {
    disabledAlerts: [
        "Access_Anomaly",
        "Usage_Anomaly",
    ],
    emailAccountAdmins: true,
    emailAddresses: ["testSecurityAlert@microsoft.com"],
    resourceGroupName: "securityalert-4799",
    retentionDays: 5,
    securityAlertPolicyName: "Default",
    serverName: "securityalert-6440",
    state: azure_native.dbforpostgresql.ServerSecurityAlertPolicyState.Enabled,
    storageAccountAccessKey: "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
    storageEndpoint: "https://mystorage.blob.core.windows.net",
});
resources:
  serverSecurityAlertPolicy:
    type: azure-native:dbforpostgresql:ServerSecurityAlertPolicy
    properties:
      disabledAlerts:
        - Access_Anomaly
        - Usage_Anomaly
      emailAccountAdmins: true
      emailAddresses:
        - testSecurityAlert@microsoft.com
      resourceGroupName: securityalert-4799
      retentionDays: 5
      securityAlertPolicyName: Default
      serverName: securityalert-6440
      state: Enabled
      storageAccountAccessKey: sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==
      storageEndpoint: https://mystorage.blob.core.windows.net
Update a server's threat detection policy with minimal parameters
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var serverSecurityAlertPolicy = new AzureNative.DBforPostgreSQL.ServerSecurityAlertPolicy("serverSecurityAlertPolicy", new()
    {
        EmailAccountAdmins = true,
        ResourceGroupName = "securityalert-4799",
        SecurityAlertPolicyName = "Default",
        ServerName = "securityalert-6440",
        State = AzureNative.DBforPostgreSQL.ServerSecurityAlertPolicyState.Disabled,
    });
});
package main
import (
	dbforpostgresql "github.com/pulumi/pulumi-azure-native-sdk/dbforpostgresql"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dbforpostgresql.NewServerSecurityAlertPolicy(ctx, "serverSecurityAlertPolicy", &dbforpostgresql.ServerSecurityAlertPolicyArgs{
			EmailAccountAdmins:      pulumi.Bool(true),
			ResourceGroupName:       pulumi.String("securityalert-4799"),
			SecurityAlertPolicyName: pulumi.String("Default"),
			ServerName:              pulumi.String("securityalert-6440"),
			State:                   dbforpostgresql.ServerSecurityAlertPolicyStateDisabled,
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dbforpostgresql.ServerSecurityAlertPolicy;
import com.pulumi.azurenative.dbforpostgresql.ServerSecurityAlertPolicyArgs;
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 serverSecurityAlertPolicy = new ServerSecurityAlertPolicy("serverSecurityAlertPolicy", ServerSecurityAlertPolicyArgs.builder()        
            .emailAccountAdmins(true)
            .resourceGroupName("securityalert-4799")
            .securityAlertPolicyName("Default")
            .serverName("securityalert-6440")
            .state("Disabled")
            .build());
    }
}
import pulumi
import pulumi_azure_native as azure_native
server_security_alert_policy = azure_native.dbforpostgresql.ServerSecurityAlertPolicy("serverSecurityAlertPolicy",
    email_account_admins=True,
    resource_group_name="securityalert-4799",
    security_alert_policy_name="Default",
    server_name="securityalert-6440",
    state=azure_native.dbforpostgresql.ServerSecurityAlertPolicyState.DISABLED)
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const serverSecurityAlertPolicy = new azure_native.dbforpostgresql.ServerSecurityAlertPolicy("serverSecurityAlertPolicy", {
    emailAccountAdmins: true,
    resourceGroupName: "securityalert-4799",
    securityAlertPolicyName: "Default",
    serverName: "securityalert-6440",
    state: azure_native.dbforpostgresql.ServerSecurityAlertPolicyState.Disabled,
});
resources:
  serverSecurityAlertPolicy:
    type: azure-native:dbforpostgresql:ServerSecurityAlertPolicy
    properties:
      emailAccountAdmins: true
      resourceGroupName: securityalert-4799
      securityAlertPolicyName: Default
      serverName: securityalert-6440
      state: Disabled
Create ServerSecurityAlertPolicy Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new ServerSecurityAlertPolicy(name: string, args: ServerSecurityAlertPolicyArgs, opts?: CustomResourceOptions);@overload
def ServerSecurityAlertPolicy(resource_name: str,
                              args: ServerSecurityAlertPolicyArgs,
                              opts: Optional[ResourceOptions] = None)
@overload
def ServerSecurityAlertPolicy(resource_name: str,
                              opts: Optional[ResourceOptions] = None,
                              resource_group_name: Optional[str] = None,
                              server_name: Optional[str] = None,
                              state: Optional[ServerSecurityAlertPolicyState] = None,
                              disabled_alerts: Optional[Sequence[str]] = None,
                              email_account_admins: Optional[bool] = None,
                              email_addresses: Optional[Sequence[str]] = None,
                              retention_days: Optional[int] = None,
                              security_alert_policy_name: Optional[str] = None,
                              storage_account_access_key: Optional[str] = None,
                              storage_endpoint: Optional[str] = None)func NewServerSecurityAlertPolicy(ctx *Context, name string, args ServerSecurityAlertPolicyArgs, opts ...ResourceOption) (*ServerSecurityAlertPolicy, error)public ServerSecurityAlertPolicy(string name, ServerSecurityAlertPolicyArgs args, CustomResourceOptions? opts = null)
public ServerSecurityAlertPolicy(String name, ServerSecurityAlertPolicyArgs args)
public ServerSecurityAlertPolicy(String name, ServerSecurityAlertPolicyArgs args, CustomResourceOptions options)
type: azure-native:dbforpostgresql:ServerSecurityAlertPolicy
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 ServerSecurityAlertPolicyArgs
 - 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 ServerSecurityAlertPolicyArgs
 - 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 ServerSecurityAlertPolicyArgs
 - The arguments to resource properties.
 - opts ResourceOption
 - Bag of options to control resource's behavior.
 
- name string
 - The unique name of the resource.
 - args ServerSecurityAlertPolicyArgs
 - The arguments to resource properties.
 - opts CustomResourceOptions
 - Bag of options to control resource's behavior.
 
- name String
 - The unique name of the resource.
 - args ServerSecurityAlertPolicyArgs
 - 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 serverSecurityAlertPolicyResource = new AzureNative.Dbforpostgresql.ServerSecurityAlertPolicy("serverSecurityAlertPolicyResource", new()
{
    ResourceGroupName = "string",
    ServerName = "string",
    State = "Enabled",
    DisabledAlerts = new[]
    {
        "string",
    },
    EmailAccountAdmins = false,
    EmailAddresses = new[]
    {
        "string",
    },
    RetentionDays = 0,
    SecurityAlertPolicyName = "string",
    StorageAccountAccessKey = "string",
    StorageEndpoint = "string",
});
example, err := dbforpostgresql.NewServerSecurityAlertPolicy(ctx, "serverSecurityAlertPolicyResource", &dbforpostgresql.ServerSecurityAlertPolicyArgs{
	ResourceGroupName: "string",
	ServerName:        "string",
	State:             "Enabled",
	DisabledAlerts: []string{
		"string",
	},
	EmailAccountAdmins: false,
	EmailAddresses: []string{
		"string",
	},
	RetentionDays:           0,
	SecurityAlertPolicyName: "string",
	StorageAccountAccessKey: "string",
	StorageEndpoint:         "string",
})
var serverSecurityAlertPolicyResource = new ServerSecurityAlertPolicy("serverSecurityAlertPolicyResource", ServerSecurityAlertPolicyArgs.builder()
    .resourceGroupName("string")
    .serverName("string")
    .state("Enabled")
    .disabledAlerts("string")
    .emailAccountAdmins(false)
    .emailAddresses("string")
    .retentionDays(0)
    .securityAlertPolicyName("string")
    .storageAccountAccessKey("string")
    .storageEndpoint("string")
    .build());
server_security_alert_policy_resource = azure_native.dbforpostgresql.ServerSecurityAlertPolicy("serverSecurityAlertPolicyResource",
    resource_group_name=string,
    server_name=string,
    state=Enabled,
    disabled_alerts=[string],
    email_account_admins=False,
    email_addresses=[string],
    retention_days=0,
    security_alert_policy_name=string,
    storage_account_access_key=string,
    storage_endpoint=string)
const serverSecurityAlertPolicyResource = new azure_native.dbforpostgresql.ServerSecurityAlertPolicy("serverSecurityAlertPolicyResource", {
    resourceGroupName: "string",
    serverName: "string",
    state: "Enabled",
    disabledAlerts: ["string"],
    emailAccountAdmins: false,
    emailAddresses: ["string"],
    retentionDays: 0,
    securityAlertPolicyName: "string",
    storageAccountAccessKey: "string",
    storageEndpoint: "string",
});
type: azure-native:dbforpostgresql:ServerSecurityAlertPolicy
properties:
    disabledAlerts:
        - string
    emailAccountAdmins: false
    emailAddresses:
        - string
    resourceGroupName: string
    retentionDays: 0
    securityAlertPolicyName: string
    serverName: string
    state: Enabled
    storageAccountAccessKey: string
    storageEndpoint: string
ServerSecurityAlertPolicy 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 ServerSecurityAlertPolicy resource accepts the following input properties:
- Resource
Group stringName  - The name of the resource group. The name is case insensitive.
 - Server
Name string - The name of the server.
 - State
Pulumi.
Azure Native. DBfor Postgre SQL. Server Security Alert Policy State  - Specifies the state of the policy, whether it is enabled or disabled.
 - Disabled
Alerts List<string> - Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly
 - Email
Account boolAdmins  - Specifies that the alert is sent to the account administrators.
 - Email
Addresses List<string> - Specifies an array of e-mail addresses to which the alert is sent.
 - Retention
Days int - Specifies the number of days to keep in the Threat Detection audit logs.
 - Security
Alert stringPolicy Name  - The name of the threat detection policy.
 - Storage
Account stringAccess Key  - Specifies the identifier key of the Threat Detection audit storage account.
 - Storage
Endpoint string - Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.
 
- Resource
Group stringName  - The name of the resource group. The name is case insensitive.
 - Server
Name string - The name of the server.
 - State
Server
Security Alert Policy State Enum  - Specifies the state of the policy, whether it is enabled or disabled.
 - Disabled
Alerts []string - Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly
 - Email
Account boolAdmins  - Specifies that the alert is sent to the account administrators.
 - Email
Addresses []string - Specifies an array of e-mail addresses to which the alert is sent.
 - Retention
Days int - Specifies the number of days to keep in the Threat Detection audit logs.
 - Security
Alert stringPolicy Name  - The name of the threat detection policy.
 - Storage
Account stringAccess Key  - Specifies the identifier key of the Threat Detection audit storage account.
 - Storage
Endpoint string - Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.
 
- resource
Group StringName  - The name of the resource group. The name is case insensitive.
 - server
Name String - The name of the server.
 - state
Server
Security Alert Policy State  - Specifies the state of the policy, whether it is enabled or disabled.
 - disabled
Alerts List<String> - Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly
 - email
Account BooleanAdmins  - Specifies that the alert is sent to the account administrators.
 - email
Addresses List<String> - Specifies an array of e-mail addresses to which the alert is sent.
 - retention
Days Integer - Specifies the number of days to keep in the Threat Detection audit logs.
 - security
Alert StringPolicy Name  - The name of the threat detection policy.
 - storage
Account StringAccess Key  - Specifies the identifier key of the Threat Detection audit storage account.
 - storage
Endpoint String - Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.
 
- resource
Group stringName  - The name of the resource group. The name is case insensitive.
 - server
Name string - The name of the server.
 - state
Server
Security Alert Policy State  - Specifies the state of the policy, whether it is enabled or disabled.
 - disabled
Alerts string[] - Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly
 - email
Account booleanAdmins  - Specifies that the alert is sent to the account administrators.
 - email
Addresses string[] - Specifies an array of e-mail addresses to which the alert is sent.
 - retention
Days number - Specifies the number of days to keep in the Threat Detection audit logs.
 - security
Alert stringPolicy Name  - The name of the threat detection policy.
 - storage
Account stringAccess Key  - Specifies the identifier key of the Threat Detection audit storage account.
 - storage
Endpoint string - Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.
 
- resource_
group_ strname  - The name of the resource group. The name is case insensitive.
 - server_
name str - The name of the server.
 - state
Server
Security Alert Policy State  - Specifies the state of the policy, whether it is enabled or disabled.
 - disabled_
alerts Sequence[str] - Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly
 - email_
account_ booladmins  - Specifies that the alert is sent to the account administrators.
 - email_
addresses Sequence[str] - Specifies an array of e-mail addresses to which the alert is sent.
 - retention_
days int - Specifies the number of days to keep in the Threat Detection audit logs.
 - security_
alert_ strpolicy_ name  - The name of the threat detection policy.
 - storage_
account_ straccess_ key  - Specifies the identifier key of the Threat Detection audit storage account.
 - storage_
endpoint str - Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.
 
- resource
Group StringName  - The name of the resource group. The name is case insensitive.
 - server
Name String - The name of the server.
 - state "Enabled" | "Disabled"
 - Specifies the state of the policy, whether it is enabled or disabled.
 - disabled
Alerts List<String> - Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly
 - email
Account BooleanAdmins  - Specifies that the alert is sent to the account administrators.
 - email
Addresses List<String> - Specifies an array of e-mail addresses to which the alert is sent.
 - retention
Days Number - Specifies the number of days to keep in the Threat Detection audit logs.
 - security
Alert StringPolicy Name  - The name of the threat detection policy.
 - storage
Account StringAccess Key  - Specifies the identifier key of the Threat Detection audit storage account.
 - storage
Endpoint String - Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.
 
Outputs
All input properties are implicitly available as output properties. Additionally, the ServerSecurityAlertPolicy resource produces the following output properties:
Supporting Types
ServerSecurityAlertPolicyState, ServerSecurityAlertPolicyStateArgs          
- Enabled
 - Enabled
 - Disabled
 - Disabled
 
- Server
Security Alert Policy State Enabled  - Enabled
 - Server
Security Alert Policy State Disabled  - Disabled
 
- Enabled
 - Enabled
 - Disabled
 - Disabled
 
- Enabled
 - Enabled
 - Disabled
 - Disabled
 
- ENABLED
 - Enabled
 - DISABLED
 - Disabled
 
- "Enabled"
 - Enabled
 - "Disabled"
 - Disabled
 
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:dbforpostgresql:ServerSecurityAlertPolicy Default /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.DBforPostgreSQL/servers/securityalert-6440/securityAlertPolicies/default 
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
 - azure-native-v1 pulumi/pulumi-azure-native
 - License
 - Apache-2.0