// Code generated by azure-service-operator-codegen. DO NOT EDIT.
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT license.
package arm

type ServersSecurityAlertPolicy_STATUS struct {
	// Id: Resource ID.
	Id *string `json:"id,omitempty"`

	// Name: Resource name.
	Name *string `json:"name,omitempty"`

	// Properties: Resource properties.
	Properties *ServerSecurityAlertPoliciesSecurityAlertsPolicyProperties_STATUS `json:"properties,omitempty"`

	// SystemData: SystemData of SecurityAlertPolicyResource.
	SystemData *SystemData_STATUS `json:"systemData,omitempty"`

	// Type: Resource type.
	Type *string `json:"type,omitempty"`
}

// Properties of a security alert policy.
type ServerSecurityAlertPoliciesSecurityAlertsPolicyProperties_STATUS struct {
	// CreationTime: Specifies the UTC creation time of the policy.
	CreationTime *string `json:"creationTime,omitempty"`

	// DisabledAlerts: Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection,
	// Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action, Brute_Force
	DisabledAlerts []string `json:"disabledAlerts,omitempty"`

	// EmailAccountAdmins: Specifies that the alert is sent to the account administrators.
	EmailAccountAdmins *bool `json:"emailAccountAdmins,omitempty"`

	// EmailAddresses: Specifies an array of e-mail addresses to which the alert is sent.
	EmailAddresses []string `json:"emailAddresses,omitempty"`

	// RetentionDays: Specifies the number of days to keep in the Threat Detection audit logs.
	RetentionDays *int `json:"retentionDays,omitempty"`

	// State: Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the
	// specific database.
	State *ServerSecurityAlertPoliciesSecurityAlertsPolicyProperties_State_STATUS `json:"state,omitempty"`

	// StorageEndpoint: Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage
	// will hold all Threat Detection audit logs.
	StorageEndpoint *string `json:"storageEndpoint,omitempty"`
}

type ServerSecurityAlertPoliciesSecurityAlertsPolicyProperties_State_STATUS string

const (
	ServerSecurityAlertPoliciesSecurityAlertsPolicyProperties_State_STATUS_Disabled = ServerSecurityAlertPoliciesSecurityAlertsPolicyProperties_State_STATUS("Disabled")
	ServerSecurityAlertPoliciesSecurityAlertsPolicyProperties_State_STATUS_Enabled  = ServerSecurityAlertPoliciesSecurityAlertsPolicyProperties_State_STATUS("Enabled")
)

// Mapping from string to ServerSecurityAlertPoliciesSecurityAlertsPolicyProperties_State_STATUS
var serverSecurityAlertPoliciesSecurityAlertsPolicyProperties_State_STATUS_Values = map[string]ServerSecurityAlertPoliciesSecurityAlertsPolicyProperties_State_STATUS{
	"disabled": ServerSecurityAlertPoliciesSecurityAlertsPolicyProperties_State_STATUS_Disabled,
	"enabled":  ServerSecurityAlertPoliciesSecurityAlertsPolicyProperties_State_STATUS_Enabled,
}
