securitycenter

package
v3.33.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 8, 2020 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AdvancedThreatProtection

type AdvancedThreatProtection struct {
	pulumi.CustomResourceState

	// Should Advanced Threat Protection be enabled on this resource?
	Enabled pulumi.BoolOutput `pulumi:"enabled"`
	// The ID of the Azure Resource which to enable Advanced Threat Protection on. Changing this forces a new resource to be created.
	TargetResourceId pulumi.StringOutput `pulumi:"targetResourceId"`
}

Manages a resources Advanced Threat Protection setting.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/securitycenter"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/storage"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := core.NewResourceGroup(ctx, "rg", &core.ResourceGroupArgs{
			Location: pulumi.String("northeurope"),
		})
		if err != nil {
			return err
		}
		exampleAccount, err := storage.NewAccount(ctx, "exampleAccount", &storage.AccountArgs{
			ResourceGroupName:      pulumi.Any(azurerm_resource_group.Example.Name),
			Location:               pulumi.Any(azurerm_resource_group.Example.Location),
			AccountTier:            pulumi.String("Standard"),
			AccountReplicationType: pulumi.String("LRS"),
			Tags: pulumi.StringMap{
				"environment": pulumi.String("example"),
			},
		})
		if err != nil {
			return err
		}
		_, err = securitycenter.NewAdvancedThreatProtection(ctx, "exampleAdvancedThreatProtection", &securitycenter.AdvancedThreatProtectionArgs{
			TargetResourceId: exampleAccount.ID(),
			Enabled:          pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Advanced Threat Protection can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:securitycenter/advancedThreatProtection:AdvancedThreatProtection example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/exampleResourceGroup/providers/Microsoft.Storage/storageAccounts/exampleaccount/providers/Microsoft.Security/advancedThreatProtectionSettings/default

```

func GetAdvancedThreatProtection

func GetAdvancedThreatProtection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AdvancedThreatProtectionState, opts ...pulumi.ResourceOption) (*AdvancedThreatProtection, error)

GetAdvancedThreatProtection gets an existing AdvancedThreatProtection resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAdvancedThreatProtection

func NewAdvancedThreatProtection(ctx *pulumi.Context,
	name string, args *AdvancedThreatProtectionArgs, opts ...pulumi.ResourceOption) (*AdvancedThreatProtection, error)

NewAdvancedThreatProtection registers a new resource with the given unique name, arguments, and options.

func (AdvancedThreatProtection) ElementType added in v3.31.1

func (AdvancedThreatProtection) ElementType() reflect.Type

func (AdvancedThreatProtection) ToAdvancedThreatProtectionOutput added in v3.31.1

func (i AdvancedThreatProtection) ToAdvancedThreatProtectionOutput() AdvancedThreatProtectionOutput

func (AdvancedThreatProtection) ToAdvancedThreatProtectionOutputWithContext added in v3.31.1

func (i AdvancedThreatProtection) ToAdvancedThreatProtectionOutputWithContext(ctx context.Context) AdvancedThreatProtectionOutput

type AdvancedThreatProtectionArgs

type AdvancedThreatProtectionArgs struct {
	// Should Advanced Threat Protection be enabled on this resource?
	Enabled pulumi.BoolInput
	// The ID of the Azure Resource which to enable Advanced Threat Protection on. Changing this forces a new resource to be created.
	TargetResourceId pulumi.StringInput
}

The set of arguments for constructing a AdvancedThreatProtection resource.

func (AdvancedThreatProtectionArgs) ElementType

type AdvancedThreatProtectionInput added in v3.31.1

type AdvancedThreatProtectionInput interface {
	pulumi.Input

	ToAdvancedThreatProtectionOutput() AdvancedThreatProtectionOutput
	ToAdvancedThreatProtectionOutputWithContext(ctx context.Context) AdvancedThreatProtectionOutput
}

type AdvancedThreatProtectionOutput added in v3.31.1

type AdvancedThreatProtectionOutput struct {
	*pulumi.OutputState
}

func (AdvancedThreatProtectionOutput) ElementType added in v3.31.1

func (AdvancedThreatProtectionOutput) ToAdvancedThreatProtectionOutput added in v3.31.1

func (o AdvancedThreatProtectionOutput) ToAdvancedThreatProtectionOutput() AdvancedThreatProtectionOutput

func (AdvancedThreatProtectionOutput) ToAdvancedThreatProtectionOutputWithContext added in v3.31.1

func (o AdvancedThreatProtectionOutput) ToAdvancedThreatProtectionOutputWithContext(ctx context.Context) AdvancedThreatProtectionOutput

type AdvancedThreatProtectionState

type AdvancedThreatProtectionState struct {
	// Should Advanced Threat Protection be enabled on this resource?
	Enabled pulumi.BoolPtrInput
	// The ID of the Azure Resource which to enable Advanced Threat Protection on. Changing this forces a new resource to be created.
	TargetResourceId pulumi.StringPtrInput
}

func (AdvancedThreatProtectionState) ElementType

type AutoProvisioning added in v3.29.0

type AutoProvisioning struct {
	pulumi.CustomResourceState

	// Should the security agent be automatically provisioned on Virtual Machines in this subscription? Possible values are `On` (to install the security agent automatically, if it's missing) or `Off` (to not install the security agent automatically).
	AutoProvision pulumi.StringOutput `pulumi:"autoProvision"`
}

Enables or disables the Security Center Auto Provisioning feature for the subscription

> **NOTE:** There is no resource name required, it will always be "default"

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/securitycenter"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securitycenter.NewAutoProvisioning(ctx, "example", &securitycenter.AutoProvisioningArgs{
			AutoProvision: pulumi.String("On"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Security Center Auto Provisioning can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:securitycenter/autoProvisioning:AutoProvisioning example /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Security/autoProvisioningSettings/default

```

func GetAutoProvisioning added in v3.29.0

func GetAutoProvisioning(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AutoProvisioningState, opts ...pulumi.ResourceOption) (*AutoProvisioning, error)

GetAutoProvisioning gets an existing AutoProvisioning resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAutoProvisioning added in v3.29.0

func NewAutoProvisioning(ctx *pulumi.Context,
	name string, args *AutoProvisioningArgs, opts ...pulumi.ResourceOption) (*AutoProvisioning, error)

NewAutoProvisioning registers a new resource with the given unique name, arguments, and options.

func (AutoProvisioning) ElementType added in v3.31.1

func (AutoProvisioning) ElementType() reflect.Type

func (AutoProvisioning) ToAutoProvisioningOutput added in v3.31.1

func (i AutoProvisioning) ToAutoProvisioningOutput() AutoProvisioningOutput

func (AutoProvisioning) ToAutoProvisioningOutputWithContext added in v3.31.1

func (i AutoProvisioning) ToAutoProvisioningOutputWithContext(ctx context.Context) AutoProvisioningOutput

type AutoProvisioningArgs added in v3.29.0

type AutoProvisioningArgs struct {
	// Should the security agent be automatically provisioned on Virtual Machines in this subscription? Possible values are `On` (to install the security agent automatically, if it's missing) or `Off` (to not install the security agent automatically).
	AutoProvision pulumi.StringInput
}

The set of arguments for constructing a AutoProvisioning resource.

func (AutoProvisioningArgs) ElementType added in v3.29.0

func (AutoProvisioningArgs) ElementType() reflect.Type

type AutoProvisioningInput added in v3.31.1

type AutoProvisioningInput interface {
	pulumi.Input

	ToAutoProvisioningOutput() AutoProvisioningOutput
	ToAutoProvisioningOutputWithContext(ctx context.Context) AutoProvisioningOutput
}

type AutoProvisioningOutput added in v3.31.1

type AutoProvisioningOutput struct {
	*pulumi.OutputState
}

func (AutoProvisioningOutput) ElementType added in v3.31.1

func (AutoProvisioningOutput) ElementType() reflect.Type

func (AutoProvisioningOutput) ToAutoProvisioningOutput added in v3.31.1

func (o AutoProvisioningOutput) ToAutoProvisioningOutput() AutoProvisioningOutput

func (AutoProvisioningOutput) ToAutoProvisioningOutputWithContext added in v3.31.1

func (o AutoProvisioningOutput) ToAutoProvisioningOutputWithContext(ctx context.Context) AutoProvisioningOutput

type AutoProvisioningState added in v3.29.0

type AutoProvisioningState struct {
	// Should the security agent be automatically provisioned on Virtual Machines in this subscription? Possible values are `On` (to install the security agent automatically, if it's missing) or `Off` (to not install the security agent automatically).
	AutoProvision pulumi.StringPtrInput
}

func (AutoProvisioningState) ElementType added in v3.29.0

func (AutoProvisioningState) ElementType() reflect.Type

type Automation added in v3.32.0

type Automation struct {
	pulumi.CustomResourceState

	// One or more `action` blocks as defined below. An `action` tells this automation where the data is to be sent to upon being evaluated by the rules in the `source`.
	Actions AutomationActionArrayOutput `pulumi:"actions"`
	// Boolean to enable or disable this Security Center Automation
	Enabled pulumi.BoolPtrOutput `pulumi:"enabled"`
	// The Azure Region where the Security Center Automation should exist. Changing this forces a new Security Center Automation to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name which should be used for this Security Center Automation. Changing this forces a new Security Center Automation to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the Resource Group where the Security Center Automation should exist. Changing this forces a new Security Center Automation to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A list of scopes on which the automation logic is applied, at least one is required. Supported scopes are a subscription (in this format `/subscriptions/00000000-0000-0000-0000-000000000000`) or a resource group under that subscription (in the format `/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example`). The automation will only apply on defined scopes.
	Scopes pulumi.StringArrayOutput `pulumi:"scopes"`
	// One or more `source` blocks as defined below. A `source` defines what data types will be processed and a set of rules to filter that data.
	Sources AutomationSourceArrayOutput `pulumi:"sources"`
}

Manages Security Center Automation and Continuous Export. This resource supports three types of destination in the `action`, Logic Apps, Log Analytics and Event Hubs

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/eventhub"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/securitycenter"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := core.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("westeurope"),
		})
		if err != nil {
			return err
		}
		exampleEventHubNamespace, err := eventhub.NewEventHubNamespace(ctx, "exampleEventHubNamespace", &eventhub.EventHubNamespaceArgs{
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			Sku:               pulumi.String("Standard"),
			Capacity:          pulumi.Int(2),
		})
		if err != nil {
			return err
		}
		_, err = securitycenter.NewAutomation(ctx, "exampleAutomation", &securitycenter.AutomationArgs{
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			Actions: securitycenter.AutomationActionArray{
				&securitycenter.AutomationActionArgs{
					Type:             pulumi.String("EventHub"),
					ResourceId:       exampleEventHubNamespace.ID(),
					ConnectionString: exampleEventHubNamespace.DefaultPrimaryConnectionString,
				},
			},
			Sources: securitycenter.AutomationSourceArray{
				&securitycenter.AutomationSourceArgs{
					EventSource: pulumi.String("Alerts"),
					RuleSets: securitycenter.AutomationSourceRuleSetArray{
						&securitycenter.AutomationSourceRuleSetArgs{
							Rules: securitycenter.AutomationSourceRuleSetRuleArray{
								&securitycenter.AutomationSourceRuleSetRuleArgs{
									PropertyPath:  pulumi.String("properties.metadata.severity"),
									Operator:      pulumi.String("Equals"),
									ExpectedValue: pulumi.String("High"),
									PropertyType:  pulumi.String("String"),
								},
							},
						},
					},
				},
			},
			Scopes: pulumi.StringArray{
				pulumi.String(fmt.Sprintf("%v%v", "/subscriptions/", current.SubscriptionId)),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Security Center Automations can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:securitycenter/automation:Automation example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Security/automations/automation1

```

func GetAutomation added in v3.32.0

func GetAutomation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AutomationState, opts ...pulumi.ResourceOption) (*Automation, error)

GetAutomation gets an existing Automation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAutomation added in v3.32.0

func NewAutomation(ctx *pulumi.Context,
	name string, args *AutomationArgs, opts ...pulumi.ResourceOption) (*Automation, error)

NewAutomation registers a new resource with the given unique name, arguments, and options.

func (Automation) ElementType added in v3.32.0

func (Automation) ElementType() reflect.Type

func (Automation) ToAutomationOutput added in v3.32.0

func (i Automation) ToAutomationOutput() AutomationOutput

func (Automation) ToAutomationOutputWithContext added in v3.32.0

func (i Automation) ToAutomationOutputWithContext(ctx context.Context) AutomationOutput

type AutomationAction added in v3.32.0

type AutomationAction struct {
	// A connection string to send data to the target Event Hub namespace, this should include a key with send permissions.
	ConnectionString *string `pulumi:"connectionString"`
	// The resource id of the target Logic App, Event Hub namespace or Log Analytics workspace.
	ResourceId string `pulumi:"resourceId"`
	// The callback URL to trigger the Logic App that will receive and process data sent by this automation. This can be found in the Azure Portal under "See trigger history"
	TriggerUrl *string `pulumi:"triggerUrl"`
	// Type of Azure resource to send data to. Must be set to one of: `LogicApp`, `EventHub` or `LogAnalytics`.
	Type string `pulumi:"type"`
}

type AutomationActionArgs added in v3.32.0

type AutomationActionArgs struct {
	// A connection string to send data to the target Event Hub namespace, this should include a key with send permissions.
	ConnectionString pulumi.StringPtrInput `pulumi:"connectionString"`
	// The resource id of the target Logic App, Event Hub namespace or Log Analytics workspace.
	ResourceId pulumi.StringInput `pulumi:"resourceId"`
	// The callback URL to trigger the Logic App that will receive and process data sent by this automation. This can be found in the Azure Portal under "See trigger history"
	TriggerUrl pulumi.StringPtrInput `pulumi:"triggerUrl"`
	// Type of Azure resource to send data to. Must be set to one of: `LogicApp`, `EventHub` or `LogAnalytics`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (AutomationActionArgs) ElementType added in v3.32.0

func (AutomationActionArgs) ElementType() reflect.Type

func (AutomationActionArgs) ToAutomationActionOutput added in v3.32.0

func (i AutomationActionArgs) ToAutomationActionOutput() AutomationActionOutput

func (AutomationActionArgs) ToAutomationActionOutputWithContext added in v3.32.0

func (i AutomationActionArgs) ToAutomationActionOutputWithContext(ctx context.Context) AutomationActionOutput

type AutomationActionArray added in v3.32.0

type AutomationActionArray []AutomationActionInput

func (AutomationActionArray) ElementType added in v3.32.0

func (AutomationActionArray) ElementType() reflect.Type

func (AutomationActionArray) ToAutomationActionArrayOutput added in v3.32.0

func (i AutomationActionArray) ToAutomationActionArrayOutput() AutomationActionArrayOutput

func (AutomationActionArray) ToAutomationActionArrayOutputWithContext added in v3.32.0

func (i AutomationActionArray) ToAutomationActionArrayOutputWithContext(ctx context.Context) AutomationActionArrayOutput

type AutomationActionArrayInput added in v3.32.0

type AutomationActionArrayInput interface {
	pulumi.Input

	ToAutomationActionArrayOutput() AutomationActionArrayOutput
	ToAutomationActionArrayOutputWithContext(context.Context) AutomationActionArrayOutput
}

AutomationActionArrayInput is an input type that accepts AutomationActionArray and AutomationActionArrayOutput values. You can construct a concrete instance of `AutomationActionArrayInput` via:

AutomationActionArray{ AutomationActionArgs{...} }

type AutomationActionArrayOutput added in v3.32.0

type AutomationActionArrayOutput struct{ *pulumi.OutputState }

func (AutomationActionArrayOutput) ElementType added in v3.32.0

func (AutomationActionArrayOutput) Index added in v3.32.0

func (AutomationActionArrayOutput) ToAutomationActionArrayOutput added in v3.32.0

func (o AutomationActionArrayOutput) ToAutomationActionArrayOutput() AutomationActionArrayOutput

func (AutomationActionArrayOutput) ToAutomationActionArrayOutputWithContext added in v3.32.0

func (o AutomationActionArrayOutput) ToAutomationActionArrayOutputWithContext(ctx context.Context) AutomationActionArrayOutput

type AutomationActionInput added in v3.32.0

type AutomationActionInput interface {
	pulumi.Input

	ToAutomationActionOutput() AutomationActionOutput
	ToAutomationActionOutputWithContext(context.Context) AutomationActionOutput
}

AutomationActionInput is an input type that accepts AutomationActionArgs and AutomationActionOutput values. You can construct a concrete instance of `AutomationActionInput` via:

AutomationActionArgs{...}

type AutomationActionOutput added in v3.32.0

type AutomationActionOutput struct{ *pulumi.OutputState }

func (AutomationActionOutput) ConnectionString added in v3.32.0

func (o AutomationActionOutput) ConnectionString() pulumi.StringPtrOutput

A connection string to send data to the target Event Hub namespace, this should include a key with send permissions.

func (AutomationActionOutput) ElementType added in v3.32.0

func (AutomationActionOutput) ElementType() reflect.Type

func (AutomationActionOutput) ResourceId added in v3.32.0

The resource id of the target Logic App, Event Hub namespace or Log Analytics workspace.

func (AutomationActionOutput) ToAutomationActionOutput added in v3.32.0

func (o AutomationActionOutput) ToAutomationActionOutput() AutomationActionOutput

func (AutomationActionOutput) ToAutomationActionOutputWithContext added in v3.32.0

func (o AutomationActionOutput) ToAutomationActionOutputWithContext(ctx context.Context) AutomationActionOutput

func (AutomationActionOutput) TriggerUrl added in v3.32.0

The callback URL to trigger the Logic App that will receive and process data sent by this automation. This can be found in the Azure Portal under "See trigger history"

func (AutomationActionOutput) Type added in v3.32.0

Type of Azure resource to send data to. Must be set to one of: `LogicApp`, `EventHub` or `LogAnalytics`.

type AutomationArgs added in v3.32.0

type AutomationArgs struct {
	// One or more `action` blocks as defined below. An `action` tells this automation where the data is to be sent to upon being evaluated by the rules in the `source`.
	Actions AutomationActionArrayInput
	// Boolean to enable or disable this Security Center Automation
	Enabled pulumi.BoolPtrInput
	// The Azure Region where the Security Center Automation should exist. Changing this forces a new Security Center Automation to be created.
	Location pulumi.StringPtrInput
	// The name which should be used for this Security Center Automation. Changing this forces a new Security Center Automation to be created.
	Name pulumi.StringPtrInput
	// The name of the Resource Group where the Security Center Automation should exist. Changing this forces a new Security Center Automation to be created.
	ResourceGroupName pulumi.StringInput
	// A list of scopes on which the automation logic is applied, at least one is required. Supported scopes are a subscription (in this format `/subscriptions/00000000-0000-0000-0000-000000000000`) or a resource group under that subscription (in the format `/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example`). The automation will only apply on defined scopes.
	Scopes pulumi.StringArrayInput
	// One or more `source` blocks as defined below. A `source` defines what data types will be processed and a set of rules to filter that data.
	Sources AutomationSourceArrayInput
}

The set of arguments for constructing a Automation resource.

func (AutomationArgs) ElementType added in v3.32.0

func (AutomationArgs) ElementType() reflect.Type

type AutomationInput added in v3.32.0

type AutomationInput interface {
	pulumi.Input

	ToAutomationOutput() AutomationOutput
	ToAutomationOutputWithContext(ctx context.Context) AutomationOutput
}

type AutomationOutput added in v3.32.0

type AutomationOutput struct {
	*pulumi.OutputState
}

func (AutomationOutput) ElementType added in v3.32.0

func (AutomationOutput) ElementType() reflect.Type

func (AutomationOutput) ToAutomationOutput added in v3.32.0

func (o AutomationOutput) ToAutomationOutput() AutomationOutput

func (AutomationOutput) ToAutomationOutputWithContext added in v3.32.0

func (o AutomationOutput) ToAutomationOutputWithContext(ctx context.Context) AutomationOutput

type AutomationSource added in v3.32.0

type AutomationSource struct {
	// Type of data that will trigger this automation. Must be one of `Alerts`, `Assessments` or `SubAssessments`. Note. assessments are also referred to as recommendations
	EventSource string `pulumi:"eventSource"`
	// A set of rules which evaluate upon event and data interception. This is defined in one or more `ruleSet` blocks as defined below.
	RuleSets []AutomationSourceRuleSet `pulumi:"ruleSets"`
}

type AutomationSourceArgs added in v3.32.0

type AutomationSourceArgs struct {
	// Type of data that will trigger this automation. Must be one of `Alerts`, `Assessments` or `SubAssessments`. Note. assessments are also referred to as recommendations
	EventSource pulumi.StringInput `pulumi:"eventSource"`
	// A set of rules which evaluate upon event and data interception. This is defined in one or more `ruleSet` blocks as defined below.
	RuleSets AutomationSourceRuleSetArrayInput `pulumi:"ruleSets"`
}

func (AutomationSourceArgs) ElementType added in v3.32.0

func (AutomationSourceArgs) ElementType() reflect.Type

func (AutomationSourceArgs) ToAutomationSourceOutput added in v3.32.0

func (i AutomationSourceArgs) ToAutomationSourceOutput() AutomationSourceOutput

func (AutomationSourceArgs) ToAutomationSourceOutputWithContext added in v3.32.0

func (i AutomationSourceArgs) ToAutomationSourceOutputWithContext(ctx context.Context) AutomationSourceOutput

type AutomationSourceArray added in v3.32.0

type AutomationSourceArray []AutomationSourceInput

func (AutomationSourceArray) ElementType added in v3.32.0

func (AutomationSourceArray) ElementType() reflect.Type

func (AutomationSourceArray) ToAutomationSourceArrayOutput added in v3.32.0

func (i AutomationSourceArray) ToAutomationSourceArrayOutput() AutomationSourceArrayOutput

func (AutomationSourceArray) ToAutomationSourceArrayOutputWithContext added in v3.32.0

func (i AutomationSourceArray) ToAutomationSourceArrayOutputWithContext(ctx context.Context) AutomationSourceArrayOutput

type AutomationSourceArrayInput added in v3.32.0

type AutomationSourceArrayInput interface {
	pulumi.Input

	ToAutomationSourceArrayOutput() AutomationSourceArrayOutput
	ToAutomationSourceArrayOutputWithContext(context.Context) AutomationSourceArrayOutput
}

AutomationSourceArrayInput is an input type that accepts AutomationSourceArray and AutomationSourceArrayOutput values. You can construct a concrete instance of `AutomationSourceArrayInput` via:

AutomationSourceArray{ AutomationSourceArgs{...} }

type AutomationSourceArrayOutput added in v3.32.0

type AutomationSourceArrayOutput struct{ *pulumi.OutputState }

func (AutomationSourceArrayOutput) ElementType added in v3.32.0

func (AutomationSourceArrayOutput) Index added in v3.32.0

func (AutomationSourceArrayOutput) ToAutomationSourceArrayOutput added in v3.32.0

func (o AutomationSourceArrayOutput) ToAutomationSourceArrayOutput() AutomationSourceArrayOutput

func (AutomationSourceArrayOutput) ToAutomationSourceArrayOutputWithContext added in v3.32.0

func (o AutomationSourceArrayOutput) ToAutomationSourceArrayOutputWithContext(ctx context.Context) AutomationSourceArrayOutput

type AutomationSourceInput added in v3.32.0

type AutomationSourceInput interface {
	pulumi.Input

	ToAutomationSourceOutput() AutomationSourceOutput
	ToAutomationSourceOutputWithContext(context.Context) AutomationSourceOutput
}

AutomationSourceInput is an input type that accepts AutomationSourceArgs and AutomationSourceOutput values. You can construct a concrete instance of `AutomationSourceInput` via:

AutomationSourceArgs{...}

type AutomationSourceOutput added in v3.32.0

type AutomationSourceOutput struct{ *pulumi.OutputState }

func (AutomationSourceOutput) ElementType added in v3.32.0

func (AutomationSourceOutput) ElementType() reflect.Type

func (AutomationSourceOutput) EventSource added in v3.32.0

func (o AutomationSourceOutput) EventSource() pulumi.StringOutput

Type of data that will trigger this automation. Must be one of `Alerts`, `Assessments` or `SubAssessments`. Note. assessments are also referred to as recommendations

func (AutomationSourceOutput) RuleSets added in v3.32.0

A set of rules which evaluate upon event and data interception. This is defined in one or more `ruleSet` blocks as defined below.

func (AutomationSourceOutput) ToAutomationSourceOutput added in v3.32.0

func (o AutomationSourceOutput) ToAutomationSourceOutput() AutomationSourceOutput

func (AutomationSourceOutput) ToAutomationSourceOutputWithContext added in v3.32.0

func (o AutomationSourceOutput) ToAutomationSourceOutputWithContext(ctx context.Context) AutomationSourceOutput

type AutomationSourceRuleSet added in v3.32.0

type AutomationSourceRuleSet struct {
	// One or more `rule` blocks as defined below.
	Rules []AutomationSourceRuleSetRule `pulumi:"rules"`
}

type AutomationSourceRuleSetArgs added in v3.32.0

type AutomationSourceRuleSetArgs struct {
	// One or more `rule` blocks as defined below.
	Rules AutomationSourceRuleSetRuleArrayInput `pulumi:"rules"`
}

func (AutomationSourceRuleSetArgs) ElementType added in v3.32.0

func (AutomationSourceRuleSetArgs) ToAutomationSourceRuleSetOutput added in v3.32.0

func (i AutomationSourceRuleSetArgs) ToAutomationSourceRuleSetOutput() AutomationSourceRuleSetOutput

func (AutomationSourceRuleSetArgs) ToAutomationSourceRuleSetOutputWithContext added in v3.32.0

func (i AutomationSourceRuleSetArgs) ToAutomationSourceRuleSetOutputWithContext(ctx context.Context) AutomationSourceRuleSetOutput

type AutomationSourceRuleSetArray added in v3.32.0

type AutomationSourceRuleSetArray []AutomationSourceRuleSetInput

func (AutomationSourceRuleSetArray) ElementType added in v3.32.0

func (AutomationSourceRuleSetArray) ToAutomationSourceRuleSetArrayOutput added in v3.32.0

func (i AutomationSourceRuleSetArray) ToAutomationSourceRuleSetArrayOutput() AutomationSourceRuleSetArrayOutput

func (AutomationSourceRuleSetArray) ToAutomationSourceRuleSetArrayOutputWithContext added in v3.32.0

func (i AutomationSourceRuleSetArray) ToAutomationSourceRuleSetArrayOutputWithContext(ctx context.Context) AutomationSourceRuleSetArrayOutput

type AutomationSourceRuleSetArrayInput added in v3.32.0

type AutomationSourceRuleSetArrayInput interface {
	pulumi.Input

	ToAutomationSourceRuleSetArrayOutput() AutomationSourceRuleSetArrayOutput
	ToAutomationSourceRuleSetArrayOutputWithContext(context.Context) AutomationSourceRuleSetArrayOutput
}

AutomationSourceRuleSetArrayInput is an input type that accepts AutomationSourceRuleSetArray and AutomationSourceRuleSetArrayOutput values. You can construct a concrete instance of `AutomationSourceRuleSetArrayInput` via:

AutomationSourceRuleSetArray{ AutomationSourceRuleSetArgs{...} }

type AutomationSourceRuleSetArrayOutput added in v3.32.0

type AutomationSourceRuleSetArrayOutput struct{ *pulumi.OutputState }

func (AutomationSourceRuleSetArrayOutput) ElementType added in v3.32.0

func (AutomationSourceRuleSetArrayOutput) Index added in v3.32.0

func (AutomationSourceRuleSetArrayOutput) ToAutomationSourceRuleSetArrayOutput added in v3.32.0

func (o AutomationSourceRuleSetArrayOutput) ToAutomationSourceRuleSetArrayOutput() AutomationSourceRuleSetArrayOutput

func (AutomationSourceRuleSetArrayOutput) ToAutomationSourceRuleSetArrayOutputWithContext added in v3.32.0

func (o AutomationSourceRuleSetArrayOutput) ToAutomationSourceRuleSetArrayOutputWithContext(ctx context.Context) AutomationSourceRuleSetArrayOutput

type AutomationSourceRuleSetInput added in v3.32.0

type AutomationSourceRuleSetInput interface {
	pulumi.Input

	ToAutomationSourceRuleSetOutput() AutomationSourceRuleSetOutput
	ToAutomationSourceRuleSetOutputWithContext(context.Context) AutomationSourceRuleSetOutput
}

AutomationSourceRuleSetInput is an input type that accepts AutomationSourceRuleSetArgs and AutomationSourceRuleSetOutput values. You can construct a concrete instance of `AutomationSourceRuleSetInput` via:

AutomationSourceRuleSetArgs{...}

type AutomationSourceRuleSetOutput added in v3.32.0

type AutomationSourceRuleSetOutput struct{ *pulumi.OutputState }

func (AutomationSourceRuleSetOutput) ElementType added in v3.32.0

func (AutomationSourceRuleSetOutput) Rules added in v3.32.0

One or more `rule` blocks as defined below.

func (AutomationSourceRuleSetOutput) ToAutomationSourceRuleSetOutput added in v3.32.0

func (o AutomationSourceRuleSetOutput) ToAutomationSourceRuleSetOutput() AutomationSourceRuleSetOutput

func (AutomationSourceRuleSetOutput) ToAutomationSourceRuleSetOutputWithContext added in v3.32.0

func (o AutomationSourceRuleSetOutput) ToAutomationSourceRuleSetOutputWithContext(ctx context.Context) AutomationSourceRuleSetOutput

type AutomationSourceRuleSetRule added in v3.32.0

type AutomationSourceRuleSetRule struct {
	// A value that will be compared with the value in `propertyPath`.
	ExpectedValue string `pulumi:"expectedValue"`
	// The comparison operator to use, must be one of: `Contains`, `EndsWith`, `Equals`, `GreaterThan`, `GreaterThanOrEqualTo`, `LesserThan`, `LesserThanOrEqualTo`, `NotEquals`, `StartsWith`
	Operator string `pulumi:"operator"`
	// The JPath of the entity model property that should be checked.
	PropertyPath string `pulumi:"propertyPath"`
	// The data type of the compared operands, must be one of: `Integer`, `String`, `Boolean` or `Number`.
	PropertyType string `pulumi:"propertyType"`
}

type AutomationSourceRuleSetRuleArgs added in v3.32.0

type AutomationSourceRuleSetRuleArgs struct {
	// A value that will be compared with the value in `propertyPath`.
	ExpectedValue pulumi.StringInput `pulumi:"expectedValue"`
	// The comparison operator to use, must be one of: `Contains`, `EndsWith`, `Equals`, `GreaterThan`, `GreaterThanOrEqualTo`, `LesserThan`, `LesserThanOrEqualTo`, `NotEquals`, `StartsWith`
	Operator pulumi.StringInput `pulumi:"operator"`
	// The JPath of the entity model property that should be checked.
	PropertyPath pulumi.StringInput `pulumi:"propertyPath"`
	// The data type of the compared operands, must be one of: `Integer`, `String`, `Boolean` or `Number`.
	PropertyType pulumi.StringInput `pulumi:"propertyType"`
}

func (AutomationSourceRuleSetRuleArgs) ElementType added in v3.32.0

func (AutomationSourceRuleSetRuleArgs) ToAutomationSourceRuleSetRuleOutput added in v3.32.0

func (i AutomationSourceRuleSetRuleArgs) ToAutomationSourceRuleSetRuleOutput() AutomationSourceRuleSetRuleOutput

func (AutomationSourceRuleSetRuleArgs) ToAutomationSourceRuleSetRuleOutputWithContext added in v3.32.0

func (i AutomationSourceRuleSetRuleArgs) ToAutomationSourceRuleSetRuleOutputWithContext(ctx context.Context) AutomationSourceRuleSetRuleOutput

type AutomationSourceRuleSetRuleArray added in v3.32.0

type AutomationSourceRuleSetRuleArray []AutomationSourceRuleSetRuleInput

func (AutomationSourceRuleSetRuleArray) ElementType added in v3.32.0

func (AutomationSourceRuleSetRuleArray) ToAutomationSourceRuleSetRuleArrayOutput added in v3.32.0

func (i AutomationSourceRuleSetRuleArray) ToAutomationSourceRuleSetRuleArrayOutput() AutomationSourceRuleSetRuleArrayOutput

func (AutomationSourceRuleSetRuleArray) ToAutomationSourceRuleSetRuleArrayOutputWithContext added in v3.32.0

func (i AutomationSourceRuleSetRuleArray) ToAutomationSourceRuleSetRuleArrayOutputWithContext(ctx context.Context) AutomationSourceRuleSetRuleArrayOutput

type AutomationSourceRuleSetRuleArrayInput added in v3.32.0

type AutomationSourceRuleSetRuleArrayInput interface {
	pulumi.Input

	ToAutomationSourceRuleSetRuleArrayOutput() AutomationSourceRuleSetRuleArrayOutput
	ToAutomationSourceRuleSetRuleArrayOutputWithContext(context.Context) AutomationSourceRuleSetRuleArrayOutput
}

AutomationSourceRuleSetRuleArrayInput is an input type that accepts AutomationSourceRuleSetRuleArray and AutomationSourceRuleSetRuleArrayOutput values. You can construct a concrete instance of `AutomationSourceRuleSetRuleArrayInput` via:

AutomationSourceRuleSetRuleArray{ AutomationSourceRuleSetRuleArgs{...} }

type AutomationSourceRuleSetRuleArrayOutput added in v3.32.0

type AutomationSourceRuleSetRuleArrayOutput struct{ *pulumi.OutputState }

func (AutomationSourceRuleSetRuleArrayOutput) ElementType added in v3.32.0

func (AutomationSourceRuleSetRuleArrayOutput) Index added in v3.32.0

func (AutomationSourceRuleSetRuleArrayOutput) ToAutomationSourceRuleSetRuleArrayOutput added in v3.32.0

func (o AutomationSourceRuleSetRuleArrayOutput) ToAutomationSourceRuleSetRuleArrayOutput() AutomationSourceRuleSetRuleArrayOutput

func (AutomationSourceRuleSetRuleArrayOutput) ToAutomationSourceRuleSetRuleArrayOutputWithContext added in v3.32.0

func (o AutomationSourceRuleSetRuleArrayOutput) ToAutomationSourceRuleSetRuleArrayOutputWithContext(ctx context.Context) AutomationSourceRuleSetRuleArrayOutput

type AutomationSourceRuleSetRuleInput added in v3.32.0

type AutomationSourceRuleSetRuleInput interface {
	pulumi.Input

	ToAutomationSourceRuleSetRuleOutput() AutomationSourceRuleSetRuleOutput
	ToAutomationSourceRuleSetRuleOutputWithContext(context.Context) AutomationSourceRuleSetRuleOutput
}

AutomationSourceRuleSetRuleInput is an input type that accepts AutomationSourceRuleSetRuleArgs and AutomationSourceRuleSetRuleOutput values. You can construct a concrete instance of `AutomationSourceRuleSetRuleInput` via:

AutomationSourceRuleSetRuleArgs{...}

type AutomationSourceRuleSetRuleOutput added in v3.32.0

type AutomationSourceRuleSetRuleOutput struct{ *pulumi.OutputState }

func (AutomationSourceRuleSetRuleOutput) ElementType added in v3.32.0

func (AutomationSourceRuleSetRuleOutput) ExpectedValue added in v3.32.0

A value that will be compared with the value in `propertyPath`.

func (AutomationSourceRuleSetRuleOutput) Operator added in v3.32.0

The comparison operator to use, must be one of: `Contains`, `EndsWith`, `Equals`, `GreaterThan`, `GreaterThanOrEqualTo`, `LesserThan`, `LesserThanOrEqualTo`, `NotEquals`, `StartsWith`

func (AutomationSourceRuleSetRuleOutput) PropertyPath added in v3.32.0

The JPath of the entity model property that should be checked.

func (AutomationSourceRuleSetRuleOutput) PropertyType added in v3.32.0

The data type of the compared operands, must be one of: `Integer`, `String`, `Boolean` or `Number`.

func (AutomationSourceRuleSetRuleOutput) ToAutomationSourceRuleSetRuleOutput added in v3.32.0

func (o AutomationSourceRuleSetRuleOutput) ToAutomationSourceRuleSetRuleOutput() AutomationSourceRuleSetRuleOutput

func (AutomationSourceRuleSetRuleOutput) ToAutomationSourceRuleSetRuleOutputWithContext added in v3.32.0

func (o AutomationSourceRuleSetRuleOutput) ToAutomationSourceRuleSetRuleOutputWithContext(ctx context.Context) AutomationSourceRuleSetRuleOutput

type AutomationState added in v3.32.0

type AutomationState struct {
	// One or more `action` blocks as defined below. An `action` tells this automation where the data is to be sent to upon being evaluated by the rules in the `source`.
	Actions AutomationActionArrayInput
	// Boolean to enable or disable this Security Center Automation
	Enabled pulumi.BoolPtrInput
	// The Azure Region where the Security Center Automation should exist. Changing this forces a new Security Center Automation to be created.
	Location pulumi.StringPtrInput
	// The name which should be used for this Security Center Automation. Changing this forces a new Security Center Automation to be created.
	Name pulumi.StringPtrInput
	// The name of the Resource Group where the Security Center Automation should exist. Changing this forces a new Security Center Automation to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A list of scopes on which the automation logic is applied, at least one is required. Supported scopes are a subscription (in this format `/subscriptions/00000000-0000-0000-0000-000000000000`) or a resource group under that subscription (in the format `/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example`). The automation will only apply on defined scopes.
	Scopes pulumi.StringArrayInput
	// One or more `source` blocks as defined below. A `source` defines what data types will be processed and a set of rules to filter that data.
	Sources AutomationSourceArrayInput
}

func (AutomationState) ElementType added in v3.32.0

func (AutomationState) ElementType() reflect.Type

type Contact

type Contact struct {
	pulumi.CustomResourceState

	// Whether to send security alerts notifications to the security contact.
	AlertNotifications pulumi.BoolOutput `pulumi:"alertNotifications"`
	// Whether to send security alerts notifications to subscription admins.
	AlertsToAdmins pulumi.BoolOutput `pulumi:"alertsToAdmins"`
	// The email of the Security Center Contact.
	Email pulumi.StringOutput `pulumi:"email"`
	// The phone number of the Security Center Contact.
	Phone pulumi.StringPtrOutput `pulumi:"phone"`
}

Manages the subscription's Security Center Contact.

> **NOTE:** Owner access permission is required.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/securitycenter"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securitycenter.NewContact(ctx, "example", &securitycenter.ContactArgs{
			AlertNotifications: pulumi.Bool(true),
			AlertsToAdmins:     pulumi.Bool(true),
			Email:              pulumi.String("contact@example.com"),
			Phone:              pulumi.String("+1-555-555-5555"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The contact can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:securitycenter/contact:Contact example /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Security/securityContacts/default1

```

func GetContact

func GetContact(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ContactState, opts ...pulumi.ResourceOption) (*Contact, error)

GetContact gets an existing Contact resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewContact

func NewContact(ctx *pulumi.Context,
	name string, args *ContactArgs, opts ...pulumi.ResourceOption) (*Contact, error)

NewContact registers a new resource with the given unique name, arguments, and options.

func (Contact) ElementType added in v3.31.1

func (Contact) ElementType() reflect.Type

func (Contact) ToContactOutput added in v3.31.1

func (i Contact) ToContactOutput() ContactOutput

func (Contact) ToContactOutputWithContext added in v3.31.1

func (i Contact) ToContactOutputWithContext(ctx context.Context) ContactOutput

type ContactArgs

type ContactArgs struct {
	// Whether to send security alerts notifications to the security contact.
	AlertNotifications pulumi.BoolInput
	// Whether to send security alerts notifications to subscription admins.
	AlertsToAdmins pulumi.BoolInput
	// The email of the Security Center Contact.
	Email pulumi.StringInput
	// The phone number of the Security Center Contact.
	Phone pulumi.StringPtrInput
}

The set of arguments for constructing a Contact resource.

func (ContactArgs) ElementType

func (ContactArgs) ElementType() reflect.Type

type ContactInput added in v3.31.1

type ContactInput interface {
	pulumi.Input

	ToContactOutput() ContactOutput
	ToContactOutputWithContext(ctx context.Context) ContactOutput
}

type ContactOutput added in v3.31.1

type ContactOutput struct {
	*pulumi.OutputState
}

func (ContactOutput) ElementType added in v3.31.1

func (ContactOutput) ElementType() reflect.Type

func (ContactOutput) ToContactOutput added in v3.31.1

func (o ContactOutput) ToContactOutput() ContactOutput

func (ContactOutput) ToContactOutputWithContext added in v3.31.1

func (o ContactOutput) ToContactOutputWithContext(ctx context.Context) ContactOutput

type ContactState

type ContactState struct {
	// Whether to send security alerts notifications to the security contact.
	AlertNotifications pulumi.BoolPtrInput
	// Whether to send security alerts notifications to subscription admins.
	AlertsToAdmins pulumi.BoolPtrInput
	// The email of the Security Center Contact.
	Email pulumi.StringPtrInput
	// The phone number of the Security Center Contact.
	Phone pulumi.StringPtrInput
}

func (ContactState) ElementType

func (ContactState) ElementType() reflect.Type

type Setting added in v3.26.0

type Setting struct {
	pulumi.CustomResourceState

	// Boolean flag to enable/disable data access.
	Enabled pulumi.BoolOutput `pulumi:"enabled"`
	// The setting to manage. Possible values are `MCAS` and `WDATP`.
	SettingName pulumi.StringOutput `pulumi:"settingName"`
}

Manages the Data Access Settings for Azure Security Center.

> **NOTE:** This resource requires the `Owner` permission on the Subscription.

> **NOTE:** Deletion of this resource does not change or reset the data access settings

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/securitycenter"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securitycenter.NewSetting(ctx, "example", &securitycenter.SettingArgs{
			Enabled:     pulumi.Bool(true),
			SettingName: pulumi.String("MCAS"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The setting can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:securitycenter/setting:Setting example /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Security/settings/<setting_name>

```

func GetSetting added in v3.26.0

func GetSetting(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SettingState, opts ...pulumi.ResourceOption) (*Setting, error)

GetSetting gets an existing Setting resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSetting added in v3.26.0

func NewSetting(ctx *pulumi.Context,
	name string, args *SettingArgs, opts ...pulumi.ResourceOption) (*Setting, error)

NewSetting registers a new resource with the given unique name, arguments, and options.

func (Setting) ElementType added in v3.31.1

func (Setting) ElementType() reflect.Type

func (Setting) ToSettingOutput added in v3.31.1

func (i Setting) ToSettingOutput() SettingOutput

func (Setting) ToSettingOutputWithContext added in v3.31.1

func (i Setting) ToSettingOutputWithContext(ctx context.Context) SettingOutput

type SettingArgs added in v3.26.0

type SettingArgs struct {
	// Boolean flag to enable/disable data access.
	Enabled pulumi.BoolInput
	// The setting to manage. Possible values are `MCAS` and `WDATP`.
	SettingName pulumi.StringInput
}

The set of arguments for constructing a Setting resource.

func (SettingArgs) ElementType added in v3.26.0

func (SettingArgs) ElementType() reflect.Type

type SettingInput added in v3.31.1

type SettingInput interface {
	pulumi.Input

	ToSettingOutput() SettingOutput
	ToSettingOutputWithContext(ctx context.Context) SettingOutput
}

type SettingOutput added in v3.31.1

type SettingOutput struct {
	*pulumi.OutputState
}

func (SettingOutput) ElementType added in v3.31.1

func (SettingOutput) ElementType() reflect.Type

func (SettingOutput) ToSettingOutput added in v3.31.1

func (o SettingOutput) ToSettingOutput() SettingOutput

func (SettingOutput) ToSettingOutputWithContext added in v3.31.1

func (o SettingOutput) ToSettingOutputWithContext(ctx context.Context) SettingOutput

type SettingState added in v3.26.0

type SettingState struct {
	// Boolean flag to enable/disable data access.
	Enabled pulumi.BoolPtrInput
	// The setting to manage. Possible values are `MCAS` and `WDATP`.
	SettingName pulumi.StringPtrInput
}

func (SettingState) ElementType added in v3.26.0

func (SettingState) ElementType() reflect.Type

type SubscriptionPricing

type SubscriptionPricing struct {
	pulumi.CustomResourceState

	// The resource type this setting affects. Possible values are `AppServices`, `ContainerRegistry`, `KeyVaults`, `KubernetesService`, `SqlServers`, `SqlServerVirtualMachines`, `StorageAccounts`, and `VirtualMachines`.
	ResourceType pulumi.StringPtrOutput `pulumi:"resourceType"`
	// The pricing tier to use. Possible values are `Free` and `Standard`.
	Tier pulumi.StringOutput `pulumi:"tier"`
}

Manages the Pricing Tier for Azure Security Center in the current subscription.

> **NOTE:** This resource requires the `Owner` permission on the Subscription.

> **NOTE:** Deletion of this resource does not change or reset the pricing tier to `Free`

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/securitycenter"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securitycenter.NewSubscriptionPricing(ctx, "example", &securitycenter.SubscriptionPricingArgs{
			ResourceType: pulumi.String("VirtualMachines"),
			Tier:         pulumi.String("Standard"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The pricing tier can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:securitycenter/subscriptionPricing:SubscriptionPricing example /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Security/pricings/<resource_type>

```

func GetSubscriptionPricing

func GetSubscriptionPricing(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SubscriptionPricingState, opts ...pulumi.ResourceOption) (*SubscriptionPricing, error)

GetSubscriptionPricing gets an existing SubscriptionPricing resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSubscriptionPricing

func NewSubscriptionPricing(ctx *pulumi.Context,
	name string, args *SubscriptionPricingArgs, opts ...pulumi.ResourceOption) (*SubscriptionPricing, error)

NewSubscriptionPricing registers a new resource with the given unique name, arguments, and options.

func (SubscriptionPricing) ElementType added in v3.31.1

func (SubscriptionPricing) ElementType() reflect.Type

func (SubscriptionPricing) ToSubscriptionPricingOutput added in v3.31.1

func (i SubscriptionPricing) ToSubscriptionPricingOutput() SubscriptionPricingOutput

func (SubscriptionPricing) ToSubscriptionPricingOutputWithContext added in v3.31.1

func (i SubscriptionPricing) ToSubscriptionPricingOutputWithContext(ctx context.Context) SubscriptionPricingOutput

type SubscriptionPricingArgs

type SubscriptionPricingArgs struct {
	// The resource type this setting affects. Possible values are `AppServices`, `ContainerRegistry`, `KeyVaults`, `KubernetesService`, `SqlServers`, `SqlServerVirtualMachines`, `StorageAccounts`, and `VirtualMachines`.
	ResourceType pulumi.StringPtrInput
	// The pricing tier to use. Possible values are `Free` and `Standard`.
	Tier pulumi.StringInput
}

The set of arguments for constructing a SubscriptionPricing resource.

func (SubscriptionPricingArgs) ElementType

func (SubscriptionPricingArgs) ElementType() reflect.Type

type SubscriptionPricingInput added in v3.31.1

type SubscriptionPricingInput interface {
	pulumi.Input

	ToSubscriptionPricingOutput() SubscriptionPricingOutput
	ToSubscriptionPricingOutputWithContext(ctx context.Context) SubscriptionPricingOutput
}

type SubscriptionPricingOutput added in v3.31.1

type SubscriptionPricingOutput struct {
	*pulumi.OutputState
}

func (SubscriptionPricingOutput) ElementType added in v3.31.1

func (SubscriptionPricingOutput) ElementType() reflect.Type

func (SubscriptionPricingOutput) ToSubscriptionPricingOutput added in v3.31.1

func (o SubscriptionPricingOutput) ToSubscriptionPricingOutput() SubscriptionPricingOutput

func (SubscriptionPricingOutput) ToSubscriptionPricingOutputWithContext added in v3.31.1

func (o SubscriptionPricingOutput) ToSubscriptionPricingOutputWithContext(ctx context.Context) SubscriptionPricingOutput

type SubscriptionPricingState

type SubscriptionPricingState struct {
	// The resource type this setting affects. Possible values are `AppServices`, `ContainerRegistry`, `KeyVaults`, `KubernetesService`, `SqlServers`, `SqlServerVirtualMachines`, `StorageAccounts`, and `VirtualMachines`.
	ResourceType pulumi.StringPtrInput
	// The pricing tier to use. Possible values are `Free` and `Standard`.
	Tier pulumi.StringPtrInput
}

func (SubscriptionPricingState) ElementType

func (SubscriptionPricingState) ElementType() reflect.Type

type Workspace

type Workspace struct {
	pulumi.CustomResourceState

	// The scope of VMs to send their security data to the desired workspace, unless overridden by a setting with more specific scope.
	Scope pulumi.StringOutput `pulumi:"scope"`
	// The ID of the Log Analytics Workspace to save the data in.
	WorkspaceId pulumi.StringOutput `pulumi:"workspaceId"`
}

Manages the subscription's Security Center Workspace.

> **NOTE:** Owner access permission is required.

> **NOTE:** The subscription's pricing model can not be `Free` for this to have any affect.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/operationalinsights"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/securitycenter"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("westus"),
		})
		if err != nil {
			return err
		}
		exampleAnalyticsWorkspace, err := operationalinsights.NewAnalyticsWorkspace(ctx, "exampleAnalyticsWorkspace", &operationalinsights.AnalyticsWorkspaceArgs{
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			Sku:               pulumi.String("PerGB2018"),
		})
		if err != nil {
			return err
		}
		_, err = securitycenter.NewWorkspace(ctx, "exampleWorkspace", &securitycenter.WorkspaceArgs{
			Scope:       pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000"),
			WorkspaceId: exampleAnalyticsWorkspace.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The contact can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:securitycenter/workspace:Workspace example /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Security/workspaceSettings/default

```

func GetWorkspace

func GetWorkspace(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *WorkspaceState, opts ...pulumi.ResourceOption) (*Workspace, error)

GetWorkspace gets an existing Workspace resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewWorkspace

func NewWorkspace(ctx *pulumi.Context,
	name string, args *WorkspaceArgs, opts ...pulumi.ResourceOption) (*Workspace, error)

NewWorkspace registers a new resource with the given unique name, arguments, and options.

func (Workspace) ElementType added in v3.31.1

func (Workspace) ElementType() reflect.Type

func (Workspace) ToWorkspaceOutput added in v3.31.1

func (i Workspace) ToWorkspaceOutput() WorkspaceOutput

func (Workspace) ToWorkspaceOutputWithContext added in v3.31.1

func (i Workspace) ToWorkspaceOutputWithContext(ctx context.Context) WorkspaceOutput

type WorkspaceArgs

type WorkspaceArgs struct {
	// The scope of VMs to send their security data to the desired workspace, unless overridden by a setting with more specific scope.
	Scope pulumi.StringInput
	// The ID of the Log Analytics Workspace to save the data in.
	WorkspaceId pulumi.StringInput
}

The set of arguments for constructing a Workspace resource.

func (WorkspaceArgs) ElementType

func (WorkspaceArgs) ElementType() reflect.Type

type WorkspaceInput added in v3.31.1

type WorkspaceInput interface {
	pulumi.Input

	ToWorkspaceOutput() WorkspaceOutput
	ToWorkspaceOutputWithContext(ctx context.Context) WorkspaceOutput
}

type WorkspaceOutput added in v3.31.1

type WorkspaceOutput struct {
	*pulumi.OutputState
}

func (WorkspaceOutput) ElementType added in v3.31.1

func (WorkspaceOutput) ElementType() reflect.Type

func (WorkspaceOutput) ToWorkspaceOutput added in v3.31.1

func (o WorkspaceOutput) ToWorkspaceOutput() WorkspaceOutput

func (WorkspaceOutput) ToWorkspaceOutputWithContext added in v3.31.1

func (o WorkspaceOutput) ToWorkspaceOutputWithContext(ctx context.Context) WorkspaceOutput

type WorkspaceState

type WorkspaceState struct {
	// The scope of VMs to send their security data to the desired workspace, unless overridden by a setting with more specific scope.
	Scope pulumi.StringPtrInput
	// The ID of the Log Analytics Workspace to save the data in.
	WorkspaceId pulumi.StringPtrInput
}

func (WorkspaceState) ElementType

func (WorkspaceState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL