webpubsub

package
v5.87.0 Latest Latest
Warning

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

Go to latest
Published: Aug 13, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CustomCertificate added in v5.39.0

type CustomCertificate struct {
	pulumi.CustomResourceState

	// The certificate version of the Web PubSub Custom Certificate.
	CertificateVersion pulumi.StringOutput `pulumi:"certificateVersion"`
	// The certificate ID of the Web PubSub Custom Certificate. Changing this forces a new resource to be created.
	//
	// > **Note:** Self assigned certificate is not supported and the provisioning status will fail.
	CustomCertificateId pulumi.StringOutput `pulumi:"customCertificateId"`
	// The name of the Web PubSub Custom Certificate. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The Web PubSub ID of the Web PubSub Custom Certificate. Changing this forces a new resource to be created.
	//
	// > **Note:** custom certificate is only available for Web PubSub Premium tier. Please enable managed identity in the corresponding Web PubSub Service and give the managed identity access to the key vault, the required permission is Get Certificate and Secret.
	WebPubsubId pulumi.StringOutput `pulumi:"webPubsubId"`
}

Manages an Azure Web PubSub Custom Certificate.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/webpubsub"
"github.com/pulumi/pulumi-azurerm/sdk/go/azurerm"
"github.com/pulumi/pulumi-std/sdk/go/std"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := core.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example-resources"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleWebPubsubService, err := azurerm.NewWebPubsubService(ctx, "example", &azurerm.WebPubsubServiceArgs{
			Name:              "example-webpubsub",
			Location:          testAzurermResourceGroup.Location,
			ResourceGroupName: testAzurermResourceGroup.Name,
			Sku: []map[string]interface{}{
				map[string]interface{}{
					"name":     "Premium_P1",
					"capacity": 1,
				},
			},
			Identity: []map[string]interface{}{
				map[string]interface{}{
					"type": "SystemAssigned",
				},
			},
		})
		if err != nil {
			return err
		}
		exampleKeyVault, err := keyvault.NewKeyVault(ctx, "example", &keyvault.KeyVaultArgs{
			Name:              pulumi.String("examplekeyvault"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			TenantId:          pulumi.String(current.TenantId),
			SkuName:           pulumi.String("premium"),
			AccessPolicies: keyvault.KeyVaultAccessPolicyArray{
				&keyvault.KeyVaultAccessPolicyArgs{
					TenantId: pulumi.String(current.TenantId),
					ObjectId: pulumi.String(current.ObjectId),
					CertificatePermissions: pulumi.StringArray{
						pulumi.String("Create"),
						pulumi.String("Get"),
						pulumi.String("List"),
					},
					SecretPermissions: pulumi.StringArray{
						pulumi.String("Get"),
						pulumi.String("List"),
					},
				},
				&keyvault.KeyVaultAccessPolicyArgs{
					TenantId: pulumi.String(current.TenantId),
					ObjectId: pulumi.Any(testAzurermWebPubsubService.Identity[0].PrincipalId),
					CertificatePermissions: pulumi.StringArray{
						pulumi.String("Create"),
						pulumi.String("Get"),
						pulumi.String("List"),
					},
					SecretPermissions: pulumi.StringArray{
						pulumi.String("Get"),
						pulumi.String("List"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		invokeFilebase64, err := std.Filebase64(ctx, &std.Filebase64Args{
			Input: "certificate-to-import.pfx",
		}, nil)
		if err != nil {
			return err
		}
		exampleCertificate, err := keyvault.NewCertificate(ctx, "example", &keyvault.CertificateArgs{
			Name:       pulumi.String("imported-cert"),
			KeyVaultId: exampleKeyVault.ID(),
			Certificate: &keyvault.CertificateCertificateArgs{
				Contents: pulumi.String(invokeFilebase64.Result),
				Password: pulumi.String(""),
			},
		})
		if err != nil {
			return err
		}
		_, err = webpubsub.NewCustomCertificate(ctx, "test", &webpubsub.CustomCertificateArgs{
			Name:                pulumi.String("example-cert"),
			WebPubsubId:         exampleWebPubsubService.Id,
			CustomCertificateId: exampleCertificate.ID(),
		}, pulumi.DependsOn([]pulumi.Resource{
			exampleAzurermKeyVaultAccessPolicy,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Custom Certificate for a Web PubSub service can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:webpubsub/customCertificate:CustomCertificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.SignalRService/webPubSub/WebPubsub1/customCertificates/cert1 ```

func GetCustomCertificate added in v5.39.0

func GetCustomCertificate(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CustomCertificateState, opts ...pulumi.ResourceOption) (*CustomCertificate, error)

GetCustomCertificate gets an existing CustomCertificate 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 NewCustomCertificate added in v5.39.0

func NewCustomCertificate(ctx *pulumi.Context,
	name string, args *CustomCertificateArgs, opts ...pulumi.ResourceOption) (*CustomCertificate, error)

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

func (*CustomCertificate) ElementType added in v5.39.0

func (*CustomCertificate) ElementType() reflect.Type

func (*CustomCertificate) ToCustomCertificateOutput added in v5.39.0

func (i *CustomCertificate) ToCustomCertificateOutput() CustomCertificateOutput

func (*CustomCertificate) ToCustomCertificateOutputWithContext added in v5.39.0

func (i *CustomCertificate) ToCustomCertificateOutputWithContext(ctx context.Context) CustomCertificateOutput

type CustomCertificateArgs added in v5.39.0

type CustomCertificateArgs struct {
	// The certificate ID of the Web PubSub Custom Certificate. Changing this forces a new resource to be created.
	//
	// > **Note:** Self assigned certificate is not supported and the provisioning status will fail.
	CustomCertificateId pulumi.StringInput
	// The name of the Web PubSub Custom Certificate. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The Web PubSub ID of the Web PubSub Custom Certificate. Changing this forces a new resource to be created.
	//
	// > **Note:** custom certificate is only available for Web PubSub Premium tier. Please enable managed identity in the corresponding Web PubSub Service and give the managed identity access to the key vault, the required permission is Get Certificate and Secret.
	WebPubsubId pulumi.StringInput
}

The set of arguments for constructing a CustomCertificate resource.

func (CustomCertificateArgs) ElementType added in v5.39.0

func (CustomCertificateArgs) ElementType() reflect.Type

type CustomCertificateArray added in v5.39.0

type CustomCertificateArray []CustomCertificateInput

func (CustomCertificateArray) ElementType added in v5.39.0

func (CustomCertificateArray) ElementType() reflect.Type

func (CustomCertificateArray) ToCustomCertificateArrayOutput added in v5.39.0

func (i CustomCertificateArray) ToCustomCertificateArrayOutput() CustomCertificateArrayOutput

func (CustomCertificateArray) ToCustomCertificateArrayOutputWithContext added in v5.39.0

func (i CustomCertificateArray) ToCustomCertificateArrayOutputWithContext(ctx context.Context) CustomCertificateArrayOutput

type CustomCertificateArrayInput added in v5.39.0

type CustomCertificateArrayInput interface {
	pulumi.Input

	ToCustomCertificateArrayOutput() CustomCertificateArrayOutput
	ToCustomCertificateArrayOutputWithContext(context.Context) CustomCertificateArrayOutput
}

CustomCertificateArrayInput is an input type that accepts CustomCertificateArray and CustomCertificateArrayOutput values. You can construct a concrete instance of `CustomCertificateArrayInput` via:

CustomCertificateArray{ CustomCertificateArgs{...} }

type CustomCertificateArrayOutput added in v5.39.0

type CustomCertificateArrayOutput struct{ *pulumi.OutputState }

func (CustomCertificateArrayOutput) ElementType added in v5.39.0

func (CustomCertificateArrayOutput) Index added in v5.39.0

func (CustomCertificateArrayOutput) ToCustomCertificateArrayOutput added in v5.39.0

func (o CustomCertificateArrayOutput) ToCustomCertificateArrayOutput() CustomCertificateArrayOutput

func (CustomCertificateArrayOutput) ToCustomCertificateArrayOutputWithContext added in v5.39.0

func (o CustomCertificateArrayOutput) ToCustomCertificateArrayOutputWithContext(ctx context.Context) CustomCertificateArrayOutput

type CustomCertificateInput added in v5.39.0

type CustomCertificateInput interface {
	pulumi.Input

	ToCustomCertificateOutput() CustomCertificateOutput
	ToCustomCertificateOutputWithContext(ctx context.Context) CustomCertificateOutput
}

type CustomCertificateMap added in v5.39.0

type CustomCertificateMap map[string]CustomCertificateInput

func (CustomCertificateMap) ElementType added in v5.39.0

func (CustomCertificateMap) ElementType() reflect.Type

func (CustomCertificateMap) ToCustomCertificateMapOutput added in v5.39.0

func (i CustomCertificateMap) ToCustomCertificateMapOutput() CustomCertificateMapOutput

func (CustomCertificateMap) ToCustomCertificateMapOutputWithContext added in v5.39.0

func (i CustomCertificateMap) ToCustomCertificateMapOutputWithContext(ctx context.Context) CustomCertificateMapOutput

type CustomCertificateMapInput added in v5.39.0

type CustomCertificateMapInput interface {
	pulumi.Input

	ToCustomCertificateMapOutput() CustomCertificateMapOutput
	ToCustomCertificateMapOutputWithContext(context.Context) CustomCertificateMapOutput
}

CustomCertificateMapInput is an input type that accepts CustomCertificateMap and CustomCertificateMapOutput values. You can construct a concrete instance of `CustomCertificateMapInput` via:

CustomCertificateMap{ "key": CustomCertificateArgs{...} }

type CustomCertificateMapOutput added in v5.39.0

type CustomCertificateMapOutput struct{ *pulumi.OutputState }

func (CustomCertificateMapOutput) ElementType added in v5.39.0

func (CustomCertificateMapOutput) ElementType() reflect.Type

func (CustomCertificateMapOutput) MapIndex added in v5.39.0

func (CustomCertificateMapOutput) ToCustomCertificateMapOutput added in v5.39.0

func (o CustomCertificateMapOutput) ToCustomCertificateMapOutput() CustomCertificateMapOutput

func (CustomCertificateMapOutput) ToCustomCertificateMapOutputWithContext added in v5.39.0

func (o CustomCertificateMapOutput) ToCustomCertificateMapOutputWithContext(ctx context.Context) CustomCertificateMapOutput

type CustomCertificateOutput added in v5.39.0

type CustomCertificateOutput struct{ *pulumi.OutputState }

func (CustomCertificateOutput) CertificateVersion added in v5.39.0

func (o CustomCertificateOutput) CertificateVersion() pulumi.StringOutput

The certificate version of the Web PubSub Custom Certificate.

func (CustomCertificateOutput) CustomCertificateId added in v5.39.0

func (o CustomCertificateOutput) CustomCertificateId() pulumi.StringOutput

The certificate ID of the Web PubSub Custom Certificate. Changing this forces a new resource to be created.

> **Note:** Self assigned certificate is not supported and the provisioning status will fail.

func (CustomCertificateOutput) ElementType added in v5.39.0

func (CustomCertificateOutput) ElementType() reflect.Type

func (CustomCertificateOutput) Name added in v5.39.0

The name of the Web PubSub Custom Certificate. Changing this forces a new resource to be created.

func (CustomCertificateOutput) ToCustomCertificateOutput added in v5.39.0

func (o CustomCertificateOutput) ToCustomCertificateOutput() CustomCertificateOutput

func (CustomCertificateOutput) ToCustomCertificateOutputWithContext added in v5.39.0

func (o CustomCertificateOutput) ToCustomCertificateOutputWithContext(ctx context.Context) CustomCertificateOutput

func (CustomCertificateOutput) WebPubsubId added in v5.39.0

The Web PubSub ID of the Web PubSub Custom Certificate. Changing this forces a new resource to be created.

> **Note:** custom certificate is only available for Web PubSub Premium tier. Please enable managed identity in the corresponding Web PubSub Service and give the managed identity access to the key vault, the required permission is Get Certificate and Secret.

type CustomCertificateState added in v5.39.0

type CustomCertificateState struct {
	// The certificate version of the Web PubSub Custom Certificate.
	CertificateVersion pulumi.StringPtrInput
	// The certificate ID of the Web PubSub Custom Certificate. Changing this forces a new resource to be created.
	//
	// > **Note:** Self assigned certificate is not supported and the provisioning status will fail.
	CustomCertificateId pulumi.StringPtrInput
	// The name of the Web PubSub Custom Certificate. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The Web PubSub ID of the Web PubSub Custom Certificate. Changing this forces a new resource to be created.
	//
	// > **Note:** custom certificate is only available for Web PubSub Premium tier. Please enable managed identity in the corresponding Web PubSub Service and give the managed identity access to the key vault, the required permission is Get Certificate and Secret.
	WebPubsubId pulumi.StringPtrInput
}

func (CustomCertificateState) ElementType added in v5.39.0

func (CustomCertificateState) ElementType() reflect.Type

type CustomDomain added in v5.44.0

type CustomDomain struct {
	pulumi.CustomResourceState

	// Specifies the custom domain name of the Web PubSub Custom Domain. Changing this forces a new resource to be created.
	//
	// > **NOTE:** Please ensure the custom domain name is included in the Subject Alternative Names of the selected Web PubSub Custom Certificate.
	DomainName pulumi.StringOutput `pulumi:"domainName"`
	// Specifies the name of the Web PubSub Custom Domain. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the Web PubSub Custom Certificate ID of the Web PubSub Custom Domain. Changing this forces a new resource to be created.
	WebPubsubCustomCertificateId pulumi.StringOutput `pulumi:"webPubsubCustomCertificateId"`
	// Specifies the Web PubSub ID of the Web PubSub Custom Domain. Changing this forces a new resource to be created.
	WebPubsubId pulumi.StringOutput `pulumi:"webPubsubId"`
}

Manages an Azure Web PubSub Custom Domain.

## Import

Custom Domain for a Web PubSub service can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:webpubsub/customDomain:CustomDomain example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.SignalRService/webPubSub/webpubsub1/customDomains/customDomain1 ```

func GetCustomDomain added in v5.44.0

func GetCustomDomain(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CustomDomainState, opts ...pulumi.ResourceOption) (*CustomDomain, error)

GetCustomDomain gets an existing CustomDomain 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 NewCustomDomain added in v5.44.0

func NewCustomDomain(ctx *pulumi.Context,
	name string, args *CustomDomainArgs, opts ...pulumi.ResourceOption) (*CustomDomain, error)

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

func (*CustomDomain) ElementType added in v5.44.0

func (*CustomDomain) ElementType() reflect.Type

func (*CustomDomain) ToCustomDomainOutput added in v5.44.0

func (i *CustomDomain) ToCustomDomainOutput() CustomDomainOutput

func (*CustomDomain) ToCustomDomainOutputWithContext added in v5.44.0

func (i *CustomDomain) ToCustomDomainOutputWithContext(ctx context.Context) CustomDomainOutput

type CustomDomainArgs added in v5.44.0

type CustomDomainArgs struct {
	// Specifies the custom domain name of the Web PubSub Custom Domain. Changing this forces a new resource to be created.
	//
	// > **NOTE:** Please ensure the custom domain name is included in the Subject Alternative Names of the selected Web PubSub Custom Certificate.
	DomainName pulumi.StringInput
	// Specifies the name of the Web PubSub Custom Domain. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the Web PubSub Custom Certificate ID of the Web PubSub Custom Domain. Changing this forces a new resource to be created.
	WebPubsubCustomCertificateId pulumi.StringInput
	// Specifies the Web PubSub ID of the Web PubSub Custom Domain. Changing this forces a new resource to be created.
	WebPubsubId pulumi.StringInput
}

The set of arguments for constructing a CustomDomain resource.

func (CustomDomainArgs) ElementType added in v5.44.0

func (CustomDomainArgs) ElementType() reflect.Type

type CustomDomainArray added in v5.44.0

type CustomDomainArray []CustomDomainInput

func (CustomDomainArray) ElementType added in v5.44.0

func (CustomDomainArray) ElementType() reflect.Type

func (CustomDomainArray) ToCustomDomainArrayOutput added in v5.44.0

func (i CustomDomainArray) ToCustomDomainArrayOutput() CustomDomainArrayOutput

func (CustomDomainArray) ToCustomDomainArrayOutputWithContext added in v5.44.0

func (i CustomDomainArray) ToCustomDomainArrayOutputWithContext(ctx context.Context) CustomDomainArrayOutput

type CustomDomainArrayInput added in v5.44.0

type CustomDomainArrayInput interface {
	pulumi.Input

	ToCustomDomainArrayOutput() CustomDomainArrayOutput
	ToCustomDomainArrayOutputWithContext(context.Context) CustomDomainArrayOutput
}

CustomDomainArrayInput is an input type that accepts CustomDomainArray and CustomDomainArrayOutput values. You can construct a concrete instance of `CustomDomainArrayInput` via:

CustomDomainArray{ CustomDomainArgs{...} }

type CustomDomainArrayOutput added in v5.44.0

type CustomDomainArrayOutput struct{ *pulumi.OutputState }

func (CustomDomainArrayOutput) ElementType added in v5.44.0

func (CustomDomainArrayOutput) ElementType() reflect.Type

func (CustomDomainArrayOutput) Index added in v5.44.0

func (CustomDomainArrayOutput) ToCustomDomainArrayOutput added in v5.44.0

func (o CustomDomainArrayOutput) ToCustomDomainArrayOutput() CustomDomainArrayOutput

func (CustomDomainArrayOutput) ToCustomDomainArrayOutputWithContext added in v5.44.0

func (o CustomDomainArrayOutput) ToCustomDomainArrayOutputWithContext(ctx context.Context) CustomDomainArrayOutput

type CustomDomainInput added in v5.44.0

type CustomDomainInput interface {
	pulumi.Input

	ToCustomDomainOutput() CustomDomainOutput
	ToCustomDomainOutputWithContext(ctx context.Context) CustomDomainOutput
}

type CustomDomainMap added in v5.44.0

type CustomDomainMap map[string]CustomDomainInput

func (CustomDomainMap) ElementType added in v5.44.0

func (CustomDomainMap) ElementType() reflect.Type

func (CustomDomainMap) ToCustomDomainMapOutput added in v5.44.0

func (i CustomDomainMap) ToCustomDomainMapOutput() CustomDomainMapOutput

func (CustomDomainMap) ToCustomDomainMapOutputWithContext added in v5.44.0

func (i CustomDomainMap) ToCustomDomainMapOutputWithContext(ctx context.Context) CustomDomainMapOutput

type CustomDomainMapInput added in v5.44.0

type CustomDomainMapInput interface {
	pulumi.Input

	ToCustomDomainMapOutput() CustomDomainMapOutput
	ToCustomDomainMapOutputWithContext(context.Context) CustomDomainMapOutput
}

CustomDomainMapInput is an input type that accepts CustomDomainMap and CustomDomainMapOutput values. You can construct a concrete instance of `CustomDomainMapInput` via:

CustomDomainMap{ "key": CustomDomainArgs{...} }

type CustomDomainMapOutput added in v5.44.0

type CustomDomainMapOutput struct{ *pulumi.OutputState }

func (CustomDomainMapOutput) ElementType added in v5.44.0

func (CustomDomainMapOutput) ElementType() reflect.Type

func (CustomDomainMapOutput) MapIndex added in v5.44.0

func (CustomDomainMapOutput) ToCustomDomainMapOutput added in v5.44.0

func (o CustomDomainMapOutput) ToCustomDomainMapOutput() CustomDomainMapOutput

func (CustomDomainMapOutput) ToCustomDomainMapOutputWithContext added in v5.44.0

func (o CustomDomainMapOutput) ToCustomDomainMapOutputWithContext(ctx context.Context) CustomDomainMapOutput

type CustomDomainOutput added in v5.44.0

type CustomDomainOutput struct{ *pulumi.OutputState }

func (CustomDomainOutput) DomainName added in v5.44.0

func (o CustomDomainOutput) DomainName() pulumi.StringOutput

Specifies the custom domain name of the Web PubSub Custom Domain. Changing this forces a new resource to be created.

> **NOTE:** Please ensure the custom domain name is included in the Subject Alternative Names of the selected Web PubSub Custom Certificate.

func (CustomDomainOutput) ElementType added in v5.44.0

func (CustomDomainOutput) ElementType() reflect.Type

func (CustomDomainOutput) Name added in v5.44.0

Specifies the name of the Web PubSub Custom Domain. Changing this forces a new resource to be created.

func (CustomDomainOutput) ToCustomDomainOutput added in v5.44.0

func (o CustomDomainOutput) ToCustomDomainOutput() CustomDomainOutput

func (CustomDomainOutput) ToCustomDomainOutputWithContext added in v5.44.0

func (o CustomDomainOutput) ToCustomDomainOutputWithContext(ctx context.Context) CustomDomainOutput

func (CustomDomainOutput) WebPubsubCustomCertificateId added in v5.44.0

func (o CustomDomainOutput) WebPubsubCustomCertificateId() pulumi.StringOutput

Specifies the Web PubSub Custom Certificate ID of the Web PubSub Custom Domain. Changing this forces a new resource to be created.

func (CustomDomainOutput) WebPubsubId added in v5.44.0

func (o CustomDomainOutput) WebPubsubId() pulumi.StringOutput

Specifies the Web PubSub ID of the Web PubSub Custom Domain. Changing this forces a new resource to be created.

type CustomDomainState added in v5.44.0

type CustomDomainState struct {
	// Specifies the custom domain name of the Web PubSub Custom Domain. Changing this forces a new resource to be created.
	//
	// > **NOTE:** Please ensure the custom domain name is included in the Subject Alternative Names of the selected Web PubSub Custom Certificate.
	DomainName pulumi.StringPtrInput
	// Specifies the name of the Web PubSub Custom Domain. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the Web PubSub Custom Certificate ID of the Web PubSub Custom Domain. Changing this forces a new resource to be created.
	WebPubsubCustomCertificateId pulumi.StringPtrInput
	// Specifies the Web PubSub ID of the Web PubSub Custom Domain. Changing this forces a new resource to be created.
	WebPubsubId pulumi.StringPtrInput
}

func (CustomDomainState) ElementType added in v5.44.0

func (CustomDomainState) ElementType() reflect.Type

type GetPrivateLinkResourceArgs added in v5.14.0

type GetPrivateLinkResourceArgs struct {
	// The ID of an existing Web Pubsub Resource which Private Link Resource should be retrieved for.
	WebPubsubId string `pulumi:"webPubsubId"`
}

A collection of arguments for invoking getPrivateLinkResource.

type GetPrivateLinkResourceOutputArgs added in v5.14.0

type GetPrivateLinkResourceOutputArgs struct {
	// The ID of an existing Web Pubsub Resource which Private Link Resource should be retrieved for.
	WebPubsubId pulumi.StringInput `pulumi:"webPubsubId"`
}

A collection of arguments for invoking getPrivateLinkResource.

func (GetPrivateLinkResourceOutputArgs) ElementType added in v5.14.0

type GetPrivateLinkResourceResult added in v5.14.0

type GetPrivateLinkResourceResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A `sharedPrivateLinkResourceTypes` block as defined below.
	SharedPrivateLinkResourceTypes []GetPrivateLinkResourceSharedPrivateLinkResourceType `pulumi:"sharedPrivateLinkResourceTypes"`
	WebPubsubId                    string                                                `pulumi:"webPubsubId"`
}

A collection of values returned by getPrivateLinkResource.

func GetPrivateLinkResource added in v5.14.0

func GetPrivateLinkResource(ctx *pulumi.Context, args *GetPrivateLinkResourceArgs, opts ...pulumi.InvokeOption) (*GetPrivateLinkResourceResult, error)

Use this data source to access information about the Private Link Resource supported by the Web Pubsub Resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/webpubsub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testResourceGroup, err := core.NewResourceGroup(ctx, "test", &core.ResourceGroupArgs{
			Name:     pulumi.String("terraform-webpubsub"),
			Location: pulumi.String("east us"),
		})
		if err != nil {
			return err
		}
		testService, err := webpubsub.NewService(ctx, "test", &webpubsub.ServiceArgs{
			Name:              pulumi.String("tfex-webpubsub"),
			Location:          testResourceGroup.Location,
			ResourceGroupName: testResourceGroup.Name,
			Sku:               pulumi.String("Standard_S1"),
			Capacity:          pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		_ = webpubsub.GetPrivateLinkResourceOutput(ctx, webpubsub.GetPrivateLinkResourceOutputArgs{
			WebPubsubId: testService.ID(),
		}, nil)
		return nil
	})
}

```

type GetPrivateLinkResourceResultOutput added in v5.14.0

type GetPrivateLinkResourceResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getPrivateLinkResource.

func GetPrivateLinkResourceOutput added in v5.14.0

func (GetPrivateLinkResourceResultOutput) ElementType added in v5.14.0

func (GetPrivateLinkResourceResultOutput) Id added in v5.14.0

The provider-assigned unique ID for this managed resource.

func (GetPrivateLinkResourceResultOutput) SharedPrivateLinkResourceTypes added in v5.14.0

A `sharedPrivateLinkResourceTypes` block as defined below.

func (GetPrivateLinkResourceResultOutput) ToGetPrivateLinkResourceResultOutput added in v5.14.0

func (o GetPrivateLinkResourceResultOutput) ToGetPrivateLinkResourceResultOutput() GetPrivateLinkResourceResultOutput

func (GetPrivateLinkResourceResultOutput) ToGetPrivateLinkResourceResultOutputWithContext added in v5.14.0

func (o GetPrivateLinkResourceResultOutput) ToGetPrivateLinkResourceResultOutputWithContext(ctx context.Context) GetPrivateLinkResourceResultOutput

func (GetPrivateLinkResourceResultOutput) WebPubsubId added in v5.14.0

type GetPrivateLinkResourceSharedPrivateLinkResourceType added in v5.14.0

type GetPrivateLinkResourceSharedPrivateLinkResourceType struct {
	// The description of the resource type that has been onboarded to private link service.
	Description string `pulumi:"description"`
	// The  name for the resource that has been onboarded to private link service.
	SubresourceName string `pulumi:"subresourceName"`
}

type GetPrivateLinkResourceSharedPrivateLinkResourceTypeArgs added in v5.14.0

type GetPrivateLinkResourceSharedPrivateLinkResourceTypeArgs struct {
	// The description of the resource type that has been onboarded to private link service.
	Description pulumi.StringInput `pulumi:"description"`
	// The  name for the resource that has been onboarded to private link service.
	SubresourceName pulumi.StringInput `pulumi:"subresourceName"`
}

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeArgs) ElementType added in v5.14.0

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeArgs) ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput added in v5.14.0

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeArgs) ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeOutputWithContext added in v5.14.0

func (i GetPrivateLinkResourceSharedPrivateLinkResourceTypeArgs) ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeOutputWithContext(ctx context.Context) GetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput

type GetPrivateLinkResourceSharedPrivateLinkResourceTypeArray added in v5.14.0

type GetPrivateLinkResourceSharedPrivateLinkResourceTypeArray []GetPrivateLinkResourceSharedPrivateLinkResourceTypeInput

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeArray) ElementType added in v5.14.0

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeArray) ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput added in v5.14.0

func (i GetPrivateLinkResourceSharedPrivateLinkResourceTypeArray) ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput() GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeArray) ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutputWithContext added in v5.14.0

func (i GetPrivateLinkResourceSharedPrivateLinkResourceTypeArray) ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutputWithContext(ctx context.Context) GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput

type GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayInput added in v5.14.0

type GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayInput interface {
	pulumi.Input

	ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput() GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput
	ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutputWithContext(context.Context) GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput
}

GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayInput is an input type that accepts GetPrivateLinkResourceSharedPrivateLinkResourceTypeArray and GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput values. You can construct a concrete instance of `GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayInput` via:

GetPrivateLinkResourceSharedPrivateLinkResourceTypeArray{ GetPrivateLinkResourceSharedPrivateLinkResourceTypeArgs{...} }

type GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput added in v5.14.0

type GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput struct{ *pulumi.OutputState }

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput) ElementType added in v5.14.0

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput) Index added in v5.14.0

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput) ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput added in v5.14.0

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput) ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutputWithContext added in v5.14.0

func (o GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput) ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutputWithContext(ctx context.Context) GetPrivateLinkResourceSharedPrivateLinkResourceTypeArrayOutput

type GetPrivateLinkResourceSharedPrivateLinkResourceTypeInput added in v5.14.0

type GetPrivateLinkResourceSharedPrivateLinkResourceTypeInput interface {
	pulumi.Input

	ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput() GetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput
	ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeOutputWithContext(context.Context) GetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput
}

GetPrivateLinkResourceSharedPrivateLinkResourceTypeInput is an input type that accepts GetPrivateLinkResourceSharedPrivateLinkResourceTypeArgs and GetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput values. You can construct a concrete instance of `GetPrivateLinkResourceSharedPrivateLinkResourceTypeInput` via:

GetPrivateLinkResourceSharedPrivateLinkResourceTypeArgs{...}

type GetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput added in v5.14.0

type GetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput struct{ *pulumi.OutputState }

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput) Description added in v5.14.0

The description of the resource type that has been onboarded to private link service.

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput) ElementType added in v5.14.0

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput) SubresourceName added in v5.14.0

The name for the resource that has been onboarded to private link service.

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput) ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput added in v5.14.0

func (GetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput) ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeOutputWithContext added in v5.14.0

func (o GetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput) ToGetPrivateLinkResourceSharedPrivateLinkResourceTypeOutputWithContext(ctx context.Context) GetPrivateLinkResourceSharedPrivateLinkResourceTypeOutput

type Hub

type Hub struct {
	pulumi.CustomResourceState

	// Is anonymous connections are allowed for this hub? Defaults to `false`.
	// Possible values are `true`, `false`.
	AnonymousConnectionsEnabled pulumi.BoolPtrOutput `pulumi:"anonymousConnectionsEnabled"`
	// An `eventHandler` block as defined below.
	//
	// > **NOTE:** User can change the order of `eventHandler` to change the priority accordingly.
	EventHandlers HubEventHandlerArrayOutput `pulumi:"eventHandlers"`
	// An `eventListener` block as defined below.
	//
	// > **NOTE:**  The managed identity of Web PubSub service must be enabled and the identity must have the "Azure Event Hubs Data sender" role to access the Event Hub.
	EventListeners HubEventListenerArrayOutput `pulumi:"eventListeners"`
	// The name of the Web Pubsub hub service. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the id of the Web Pubsub. Changing this forces a new resource to be created.
	WebPubsubId pulumi.StringOutput `pulumi:"webPubsubId"`
}

Manages the hub settings for a Web Pubsub.

## Example Usage

```go 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/webpubsub"
"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("terraform-webpubsub"),
			Location: pulumi.String("east us"),
		})
		if err != nil {
			return err
		}
		exampleUserAssignedIdentity, err := authorization.NewUserAssignedIdentity(ctx, "example", &authorization.UserAssignedIdentityArgs{
			Name:              pulumi.String("tfex-uai"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
		})
		if err != nil {
			return err
		}
		exampleService, err := webpubsub.NewService(ctx, "example", &webpubsub.ServiceArgs{
			Name:              pulumi.String("tfex-webpubsub"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			Sku:               pulumi.String("Standard_S1"),
			Capacity:          pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		_, err = webpubsub.NewHub(ctx, "example", &webpubsub.HubArgs{
			Name:        pulumi.String("tfex_wpsh"),
			WebPubsubId: exampleService.ID(),
			EventHandlers: webpubsub.HubEventHandlerArray{
				&webpubsub.HubEventHandlerArgs{
					UrlTemplate:      pulumi.String("https://test.com/api/{hub}/{event}"),
					UserEventPattern: pulumi.String("*"),
					SystemEvents: pulumi.StringArray{
						pulumi.String("connect"),
						pulumi.String("connected"),
					},
				},
				&webpubsub.HubEventHandlerArgs{
					UrlTemplate:      pulumi.String("https://test.com/api/{hub}/{event}"),
					UserEventPattern: pulumi.String("event1, event2"),
					SystemEvents: pulumi.StringArray{
						pulumi.String("connected"),
					},
					Auth: &webpubsub.HubEventHandlerAuthArgs{
						ManagedIdentityId: exampleUserAssignedIdentity.ID(),
					},
				},
			},
			EventListeners: webpubsub.HubEventListenerArray{
				&webpubsub.HubEventListenerArgs{
					SystemEventNameFilters: pulumi.StringArray{
						pulumi.String("connected"),
					},
					UserEventNameFilters: pulumi.StringArray{
						pulumi.String("event1"),
						pulumi.String("event2"),
					},
					EventhubNamespaceName: pulumi.Any(test.Name),
					EventhubName:          pulumi.Any(test1.Name),
				},
				&webpubsub.HubEventListenerArgs{
					SystemEventNameFilters: pulumi.StringArray{
						pulumi.String("connected"),
					},
					UserEventNameFilters: pulumi.StringArray{
						pulumi.String("*"),
					},
					EventhubNamespaceName: pulumi.Any(test.Name),
					EventhubName:          pulumi.Any(test1.Name),
				},
				&webpubsub.HubEventListenerArgs{
					SystemEventNameFilters: pulumi.StringArray{
						pulumi.String("connected"),
					},
					UserEventNameFilters: pulumi.StringArray{
						pulumi.String("event1"),
					},
					EventhubNamespaceName: pulumi.Any(test.Name),
					EventhubName:          pulumi.Any(test1.Name),
				},
			},
			AnonymousConnectionsEnabled: pulumi.Bool(true),
		}, pulumi.DependsOn([]pulumi.Resource{
			exampleService,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Web Pubsub Hub can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:webpubsub/hub:Hub example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.SignalRService/webPubSub/webPubSub1/hubs/webPubSubhub1 ```

func GetHub

func GetHub(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HubState, opts ...pulumi.ResourceOption) (*Hub, error)

GetHub gets an existing Hub 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 NewHub

func NewHub(ctx *pulumi.Context,
	name string, args *HubArgs, opts ...pulumi.ResourceOption) (*Hub, error)

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

func (*Hub) ElementType

func (*Hub) ElementType() reflect.Type

func (*Hub) ToHubOutput

func (i *Hub) ToHubOutput() HubOutput

func (*Hub) ToHubOutputWithContext

func (i *Hub) ToHubOutputWithContext(ctx context.Context) HubOutput

type HubArgs

type HubArgs struct {
	// Is anonymous connections are allowed for this hub? Defaults to `false`.
	// Possible values are `true`, `false`.
	AnonymousConnectionsEnabled pulumi.BoolPtrInput
	// An `eventHandler` block as defined below.
	//
	// > **NOTE:** User can change the order of `eventHandler` to change the priority accordingly.
	EventHandlers HubEventHandlerArrayInput
	// An `eventListener` block as defined below.
	//
	// > **NOTE:**  The managed identity of Web PubSub service must be enabled and the identity must have the "Azure Event Hubs Data sender" role to access the Event Hub.
	EventListeners HubEventListenerArrayInput
	// The name of the Web Pubsub hub service. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the id of the Web Pubsub. Changing this forces a new resource to be created.
	WebPubsubId pulumi.StringInput
}

The set of arguments for constructing a Hub resource.

func (HubArgs) ElementType

func (HubArgs) ElementType() reflect.Type

type HubArray

type HubArray []HubInput

func (HubArray) ElementType

func (HubArray) ElementType() reflect.Type

func (HubArray) ToHubArrayOutput

func (i HubArray) ToHubArrayOutput() HubArrayOutput

func (HubArray) ToHubArrayOutputWithContext

func (i HubArray) ToHubArrayOutputWithContext(ctx context.Context) HubArrayOutput

type HubArrayInput

type HubArrayInput interface {
	pulumi.Input

	ToHubArrayOutput() HubArrayOutput
	ToHubArrayOutputWithContext(context.Context) HubArrayOutput
}

HubArrayInput is an input type that accepts HubArray and HubArrayOutput values. You can construct a concrete instance of `HubArrayInput` via:

HubArray{ HubArgs{...} }

type HubArrayOutput

type HubArrayOutput struct{ *pulumi.OutputState }

func (HubArrayOutput) ElementType

func (HubArrayOutput) ElementType() reflect.Type

func (HubArrayOutput) Index

func (HubArrayOutput) ToHubArrayOutput

func (o HubArrayOutput) ToHubArrayOutput() HubArrayOutput

func (HubArrayOutput) ToHubArrayOutputWithContext

func (o HubArrayOutput) ToHubArrayOutputWithContext(ctx context.Context) HubArrayOutput

type HubEventHandler

type HubEventHandler struct {
	// An `auth` block as defined below.
	Auth *HubEventHandlerAuth `pulumi:"auth"`
	// Specifies the list of system events. Supported values are `connect`, `connected` and `disconnected`.
	SystemEvents []string `pulumi:"systemEvents"`
	// The Event Handler URL Template. Two predefined parameters `{hub}` and `{event}` are available to use in the template. The value of the EventHandler URL is dynamically calculated when the client request comes in. Example: `http://example.com/api/{hub}/{event}`.
	UrlTemplate string `pulumi:"urlTemplate"`
	// Specifies the matching event names. There are 3 kind of patterns supported: * `*` matches any event name * `,` Combine multiple events with `,` for example `event1,event2`, it matches event `event1` and `event2` * The single event name, for example `event1`, it matches `event1`.
	UserEventPattern *string `pulumi:"userEventPattern"`
}

type HubEventHandlerArgs

type HubEventHandlerArgs struct {
	// An `auth` block as defined below.
	Auth HubEventHandlerAuthPtrInput `pulumi:"auth"`
	// Specifies the list of system events. Supported values are `connect`, `connected` and `disconnected`.
	SystemEvents pulumi.StringArrayInput `pulumi:"systemEvents"`
	// The Event Handler URL Template. Two predefined parameters `{hub}` and `{event}` are available to use in the template. The value of the EventHandler URL is dynamically calculated when the client request comes in. Example: `http://example.com/api/{hub}/{event}`.
	UrlTemplate pulumi.StringInput `pulumi:"urlTemplate"`
	// Specifies the matching event names. There are 3 kind of patterns supported: * `*` matches any event name * `,` Combine multiple events with `,` for example `event1,event2`, it matches event `event1` and `event2` * The single event name, for example `event1`, it matches `event1`.
	UserEventPattern pulumi.StringPtrInput `pulumi:"userEventPattern"`
}

func (HubEventHandlerArgs) ElementType

func (HubEventHandlerArgs) ElementType() reflect.Type

func (HubEventHandlerArgs) ToHubEventHandlerOutput

func (i HubEventHandlerArgs) ToHubEventHandlerOutput() HubEventHandlerOutput

func (HubEventHandlerArgs) ToHubEventHandlerOutputWithContext

func (i HubEventHandlerArgs) ToHubEventHandlerOutputWithContext(ctx context.Context) HubEventHandlerOutput

type HubEventHandlerArray

type HubEventHandlerArray []HubEventHandlerInput

func (HubEventHandlerArray) ElementType

func (HubEventHandlerArray) ElementType() reflect.Type

func (HubEventHandlerArray) ToHubEventHandlerArrayOutput

func (i HubEventHandlerArray) ToHubEventHandlerArrayOutput() HubEventHandlerArrayOutput

func (HubEventHandlerArray) ToHubEventHandlerArrayOutputWithContext

func (i HubEventHandlerArray) ToHubEventHandlerArrayOutputWithContext(ctx context.Context) HubEventHandlerArrayOutput

type HubEventHandlerArrayInput

type HubEventHandlerArrayInput interface {
	pulumi.Input

	ToHubEventHandlerArrayOutput() HubEventHandlerArrayOutput
	ToHubEventHandlerArrayOutputWithContext(context.Context) HubEventHandlerArrayOutput
}

HubEventHandlerArrayInput is an input type that accepts HubEventHandlerArray and HubEventHandlerArrayOutput values. You can construct a concrete instance of `HubEventHandlerArrayInput` via:

HubEventHandlerArray{ HubEventHandlerArgs{...} }

type HubEventHandlerArrayOutput

type HubEventHandlerArrayOutput struct{ *pulumi.OutputState }

func (HubEventHandlerArrayOutput) ElementType

func (HubEventHandlerArrayOutput) ElementType() reflect.Type

func (HubEventHandlerArrayOutput) Index

func (HubEventHandlerArrayOutput) ToHubEventHandlerArrayOutput

func (o HubEventHandlerArrayOutput) ToHubEventHandlerArrayOutput() HubEventHandlerArrayOutput

func (HubEventHandlerArrayOutput) ToHubEventHandlerArrayOutputWithContext

func (o HubEventHandlerArrayOutput) ToHubEventHandlerArrayOutputWithContext(ctx context.Context) HubEventHandlerArrayOutput

type HubEventHandlerAuth

type HubEventHandlerAuth struct {
	// Specify the identity ID of the target resource.
	//
	// > **NOTE:** `managedIdentityId` is required if the auth block is defined
	ManagedIdentityId string `pulumi:"managedIdentityId"`
}

type HubEventHandlerAuthArgs

type HubEventHandlerAuthArgs struct {
	// Specify the identity ID of the target resource.
	//
	// > **NOTE:** `managedIdentityId` is required if the auth block is defined
	ManagedIdentityId pulumi.StringInput `pulumi:"managedIdentityId"`
}

func (HubEventHandlerAuthArgs) ElementType

func (HubEventHandlerAuthArgs) ElementType() reflect.Type

func (HubEventHandlerAuthArgs) ToHubEventHandlerAuthOutput

func (i HubEventHandlerAuthArgs) ToHubEventHandlerAuthOutput() HubEventHandlerAuthOutput

func (HubEventHandlerAuthArgs) ToHubEventHandlerAuthOutputWithContext

func (i HubEventHandlerAuthArgs) ToHubEventHandlerAuthOutputWithContext(ctx context.Context) HubEventHandlerAuthOutput

func (HubEventHandlerAuthArgs) ToHubEventHandlerAuthPtrOutput

func (i HubEventHandlerAuthArgs) ToHubEventHandlerAuthPtrOutput() HubEventHandlerAuthPtrOutput

func (HubEventHandlerAuthArgs) ToHubEventHandlerAuthPtrOutputWithContext

func (i HubEventHandlerAuthArgs) ToHubEventHandlerAuthPtrOutputWithContext(ctx context.Context) HubEventHandlerAuthPtrOutput

type HubEventHandlerAuthInput

type HubEventHandlerAuthInput interface {
	pulumi.Input

	ToHubEventHandlerAuthOutput() HubEventHandlerAuthOutput
	ToHubEventHandlerAuthOutputWithContext(context.Context) HubEventHandlerAuthOutput
}

HubEventHandlerAuthInput is an input type that accepts HubEventHandlerAuthArgs and HubEventHandlerAuthOutput values. You can construct a concrete instance of `HubEventHandlerAuthInput` via:

HubEventHandlerAuthArgs{...}

type HubEventHandlerAuthOutput

type HubEventHandlerAuthOutput struct{ *pulumi.OutputState }

func (HubEventHandlerAuthOutput) ElementType

func (HubEventHandlerAuthOutput) ElementType() reflect.Type

func (HubEventHandlerAuthOutput) ManagedIdentityId

func (o HubEventHandlerAuthOutput) ManagedIdentityId() pulumi.StringOutput

Specify the identity ID of the target resource.

> **NOTE:** `managedIdentityId` is required if the auth block is defined

func (HubEventHandlerAuthOutput) ToHubEventHandlerAuthOutput

func (o HubEventHandlerAuthOutput) ToHubEventHandlerAuthOutput() HubEventHandlerAuthOutput

func (HubEventHandlerAuthOutput) ToHubEventHandlerAuthOutputWithContext

func (o HubEventHandlerAuthOutput) ToHubEventHandlerAuthOutputWithContext(ctx context.Context) HubEventHandlerAuthOutput

func (HubEventHandlerAuthOutput) ToHubEventHandlerAuthPtrOutput

func (o HubEventHandlerAuthOutput) ToHubEventHandlerAuthPtrOutput() HubEventHandlerAuthPtrOutput

func (HubEventHandlerAuthOutput) ToHubEventHandlerAuthPtrOutputWithContext

func (o HubEventHandlerAuthOutput) ToHubEventHandlerAuthPtrOutputWithContext(ctx context.Context) HubEventHandlerAuthPtrOutput

type HubEventHandlerAuthPtrInput

type HubEventHandlerAuthPtrInput interface {
	pulumi.Input

	ToHubEventHandlerAuthPtrOutput() HubEventHandlerAuthPtrOutput
	ToHubEventHandlerAuthPtrOutputWithContext(context.Context) HubEventHandlerAuthPtrOutput
}

HubEventHandlerAuthPtrInput is an input type that accepts HubEventHandlerAuthArgs, HubEventHandlerAuthPtr and HubEventHandlerAuthPtrOutput values. You can construct a concrete instance of `HubEventHandlerAuthPtrInput` via:

        HubEventHandlerAuthArgs{...}

or:

        nil

type HubEventHandlerAuthPtrOutput

type HubEventHandlerAuthPtrOutput struct{ *pulumi.OutputState }

func (HubEventHandlerAuthPtrOutput) Elem

func (HubEventHandlerAuthPtrOutput) ElementType

func (HubEventHandlerAuthPtrOutput) ManagedIdentityId

func (o HubEventHandlerAuthPtrOutput) ManagedIdentityId() pulumi.StringPtrOutput

Specify the identity ID of the target resource.

> **NOTE:** `managedIdentityId` is required if the auth block is defined

func (HubEventHandlerAuthPtrOutput) ToHubEventHandlerAuthPtrOutput

func (o HubEventHandlerAuthPtrOutput) ToHubEventHandlerAuthPtrOutput() HubEventHandlerAuthPtrOutput

func (HubEventHandlerAuthPtrOutput) ToHubEventHandlerAuthPtrOutputWithContext

func (o HubEventHandlerAuthPtrOutput) ToHubEventHandlerAuthPtrOutputWithContext(ctx context.Context) HubEventHandlerAuthPtrOutput

type HubEventHandlerInput

type HubEventHandlerInput interface {
	pulumi.Input

	ToHubEventHandlerOutput() HubEventHandlerOutput
	ToHubEventHandlerOutputWithContext(context.Context) HubEventHandlerOutput
}

HubEventHandlerInput is an input type that accepts HubEventHandlerArgs and HubEventHandlerOutput values. You can construct a concrete instance of `HubEventHandlerInput` via:

HubEventHandlerArgs{...}

type HubEventHandlerOutput

type HubEventHandlerOutput struct{ *pulumi.OutputState }

func (HubEventHandlerOutput) Auth

An `auth` block as defined below.

func (HubEventHandlerOutput) ElementType

func (HubEventHandlerOutput) ElementType() reflect.Type

func (HubEventHandlerOutput) SystemEvents

Specifies the list of system events. Supported values are `connect`, `connected` and `disconnected`.

func (HubEventHandlerOutput) ToHubEventHandlerOutput

func (o HubEventHandlerOutput) ToHubEventHandlerOutput() HubEventHandlerOutput

func (HubEventHandlerOutput) ToHubEventHandlerOutputWithContext

func (o HubEventHandlerOutput) ToHubEventHandlerOutputWithContext(ctx context.Context) HubEventHandlerOutput

func (HubEventHandlerOutput) UrlTemplate

func (o HubEventHandlerOutput) UrlTemplate() pulumi.StringOutput

The Event Handler URL Template. Two predefined parameters `{hub}` and `{event}` are available to use in the template. The value of the EventHandler URL is dynamically calculated when the client request comes in. Example: `http://example.com/api/{hub}/{event}`.

func (HubEventHandlerOutput) UserEventPattern

func (o HubEventHandlerOutput) UserEventPattern() pulumi.StringPtrOutput

Specifies the matching event names. There are 3 kind of patterns supported: * `*` matches any event name * `,` Combine multiple events with `,` for example `event1,event2`, it matches event `event1` and `event2` * The single event name, for example `event1`, it matches `event1`.

type HubEventListener added in v5.40.0

type HubEventListener struct {
	// Specifies the event hub name to receive the events.
	EventhubName string `pulumi:"eventhubName"`
	// Specifies the event hub namespace name to receive the events.
	EventhubNamespaceName string `pulumi:"eventhubNamespaceName"`
	// Specifies the list of system events. Supported values are `connected` and `disconnected`.
	SystemEventNameFilters []string `pulumi:"systemEventNameFilters"`
	// Specifies the list of matching user event names. `["*"]` can be used to match all events.
	UserEventNameFilters []string `pulumi:"userEventNameFilters"`
}

type HubEventListenerArgs added in v5.40.0

type HubEventListenerArgs struct {
	// Specifies the event hub name to receive the events.
	EventhubName pulumi.StringInput `pulumi:"eventhubName"`
	// Specifies the event hub namespace name to receive the events.
	EventhubNamespaceName pulumi.StringInput `pulumi:"eventhubNamespaceName"`
	// Specifies the list of system events. Supported values are `connected` and `disconnected`.
	SystemEventNameFilters pulumi.StringArrayInput `pulumi:"systemEventNameFilters"`
	// Specifies the list of matching user event names. `["*"]` can be used to match all events.
	UserEventNameFilters pulumi.StringArrayInput `pulumi:"userEventNameFilters"`
}

func (HubEventListenerArgs) ElementType added in v5.40.0

func (HubEventListenerArgs) ElementType() reflect.Type

func (HubEventListenerArgs) ToHubEventListenerOutput added in v5.40.0

func (i HubEventListenerArgs) ToHubEventListenerOutput() HubEventListenerOutput

func (HubEventListenerArgs) ToHubEventListenerOutputWithContext added in v5.40.0

func (i HubEventListenerArgs) ToHubEventListenerOutputWithContext(ctx context.Context) HubEventListenerOutput

type HubEventListenerArray added in v5.40.0

type HubEventListenerArray []HubEventListenerInput

func (HubEventListenerArray) ElementType added in v5.40.0

func (HubEventListenerArray) ElementType() reflect.Type

func (HubEventListenerArray) ToHubEventListenerArrayOutput added in v5.40.0

func (i HubEventListenerArray) ToHubEventListenerArrayOutput() HubEventListenerArrayOutput

func (HubEventListenerArray) ToHubEventListenerArrayOutputWithContext added in v5.40.0

func (i HubEventListenerArray) ToHubEventListenerArrayOutputWithContext(ctx context.Context) HubEventListenerArrayOutput

type HubEventListenerArrayInput added in v5.40.0

type HubEventListenerArrayInput interface {
	pulumi.Input

	ToHubEventListenerArrayOutput() HubEventListenerArrayOutput
	ToHubEventListenerArrayOutputWithContext(context.Context) HubEventListenerArrayOutput
}

HubEventListenerArrayInput is an input type that accepts HubEventListenerArray and HubEventListenerArrayOutput values. You can construct a concrete instance of `HubEventListenerArrayInput` via:

HubEventListenerArray{ HubEventListenerArgs{...} }

type HubEventListenerArrayOutput added in v5.40.0

type HubEventListenerArrayOutput struct{ *pulumi.OutputState }

func (HubEventListenerArrayOutput) ElementType added in v5.40.0

func (HubEventListenerArrayOutput) Index added in v5.40.0

func (HubEventListenerArrayOutput) ToHubEventListenerArrayOutput added in v5.40.0

func (o HubEventListenerArrayOutput) ToHubEventListenerArrayOutput() HubEventListenerArrayOutput

func (HubEventListenerArrayOutput) ToHubEventListenerArrayOutputWithContext added in v5.40.0

func (o HubEventListenerArrayOutput) ToHubEventListenerArrayOutputWithContext(ctx context.Context) HubEventListenerArrayOutput

type HubEventListenerInput added in v5.40.0

type HubEventListenerInput interface {
	pulumi.Input

	ToHubEventListenerOutput() HubEventListenerOutput
	ToHubEventListenerOutputWithContext(context.Context) HubEventListenerOutput
}

HubEventListenerInput is an input type that accepts HubEventListenerArgs and HubEventListenerOutput values. You can construct a concrete instance of `HubEventListenerInput` via:

HubEventListenerArgs{...}

type HubEventListenerOutput added in v5.40.0

type HubEventListenerOutput struct{ *pulumi.OutputState }

func (HubEventListenerOutput) ElementType added in v5.40.0

func (HubEventListenerOutput) ElementType() reflect.Type

func (HubEventListenerOutput) EventhubName added in v5.40.0

func (o HubEventListenerOutput) EventhubName() pulumi.StringOutput

Specifies the event hub name to receive the events.

func (HubEventListenerOutput) EventhubNamespaceName added in v5.40.0

func (o HubEventListenerOutput) EventhubNamespaceName() pulumi.StringOutput

Specifies the event hub namespace name to receive the events.

func (HubEventListenerOutput) SystemEventNameFilters added in v5.40.0

func (o HubEventListenerOutput) SystemEventNameFilters() pulumi.StringArrayOutput

Specifies the list of system events. Supported values are `connected` and `disconnected`.

func (HubEventListenerOutput) ToHubEventListenerOutput added in v5.40.0

func (o HubEventListenerOutput) ToHubEventListenerOutput() HubEventListenerOutput

func (HubEventListenerOutput) ToHubEventListenerOutputWithContext added in v5.40.0

func (o HubEventListenerOutput) ToHubEventListenerOutputWithContext(ctx context.Context) HubEventListenerOutput

func (HubEventListenerOutput) UserEventNameFilters added in v5.40.0

func (o HubEventListenerOutput) UserEventNameFilters() pulumi.StringArrayOutput

Specifies the list of matching user event names. `["*"]` can be used to match all events.

type HubInput

type HubInput interface {
	pulumi.Input

	ToHubOutput() HubOutput
	ToHubOutputWithContext(ctx context.Context) HubOutput
}

type HubMap

type HubMap map[string]HubInput

func (HubMap) ElementType

func (HubMap) ElementType() reflect.Type

func (HubMap) ToHubMapOutput

func (i HubMap) ToHubMapOutput() HubMapOutput

func (HubMap) ToHubMapOutputWithContext

func (i HubMap) ToHubMapOutputWithContext(ctx context.Context) HubMapOutput

type HubMapInput

type HubMapInput interface {
	pulumi.Input

	ToHubMapOutput() HubMapOutput
	ToHubMapOutputWithContext(context.Context) HubMapOutput
}

HubMapInput is an input type that accepts HubMap and HubMapOutput values. You can construct a concrete instance of `HubMapInput` via:

HubMap{ "key": HubArgs{...} }

type HubMapOutput

type HubMapOutput struct{ *pulumi.OutputState }

func (HubMapOutput) ElementType

func (HubMapOutput) ElementType() reflect.Type

func (HubMapOutput) MapIndex

func (o HubMapOutput) MapIndex(k pulumi.StringInput) HubOutput

func (HubMapOutput) ToHubMapOutput

func (o HubMapOutput) ToHubMapOutput() HubMapOutput

func (HubMapOutput) ToHubMapOutputWithContext

func (o HubMapOutput) ToHubMapOutputWithContext(ctx context.Context) HubMapOutput

type HubOutput

type HubOutput struct{ *pulumi.OutputState }

func (HubOutput) AnonymousConnectionsEnabled added in v5.5.0

func (o HubOutput) AnonymousConnectionsEnabled() pulumi.BoolPtrOutput

Is anonymous connections are allowed for this hub? Defaults to `false`. Possible values are `true`, `false`.

func (HubOutput) ElementType

func (HubOutput) ElementType() reflect.Type

func (HubOutput) EventHandlers added in v5.5.0

func (o HubOutput) EventHandlers() HubEventHandlerArrayOutput

An `eventHandler` block as defined below.

> **NOTE:** User can change the order of `eventHandler` to change the priority accordingly.

func (HubOutput) EventListeners added in v5.40.0

func (o HubOutput) EventListeners() HubEventListenerArrayOutput

An `eventListener` block as defined below.

> **NOTE:** The managed identity of Web PubSub service must be enabled and the identity must have the "Azure Event Hubs Data sender" role to access the Event Hub.

func (HubOutput) Name added in v5.5.0

func (o HubOutput) Name() pulumi.StringOutput

The name of the Web Pubsub hub service. Changing this forces a new resource to be created.

func (HubOutput) ToHubOutput

func (o HubOutput) ToHubOutput() HubOutput

func (HubOutput) ToHubOutputWithContext

func (o HubOutput) ToHubOutputWithContext(ctx context.Context) HubOutput

func (HubOutput) WebPubsubId added in v5.5.0

func (o HubOutput) WebPubsubId() pulumi.StringOutput

Specifies the id of the Web Pubsub. Changing this forces a new resource to be created.

type HubState

type HubState struct {
	// Is anonymous connections are allowed for this hub? Defaults to `false`.
	// Possible values are `true`, `false`.
	AnonymousConnectionsEnabled pulumi.BoolPtrInput
	// An `eventHandler` block as defined below.
	//
	// > **NOTE:** User can change the order of `eventHandler` to change the priority accordingly.
	EventHandlers HubEventHandlerArrayInput
	// An `eventListener` block as defined below.
	//
	// > **NOTE:**  The managed identity of Web PubSub service must be enabled and the identity must have the "Azure Event Hubs Data sender" role to access the Event Hub.
	EventListeners HubEventListenerArrayInput
	// The name of the Web Pubsub hub service. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the id of the Web Pubsub. Changing this forces a new resource to be created.
	WebPubsubId pulumi.StringPtrInput
}

func (HubState) ElementType

func (HubState) ElementType() reflect.Type

type LookupServiceArgs

type LookupServiceArgs struct {
	// Specifies the name of the Web Pubsub service.
	Name string `pulumi:"name"`
	// Specifies the name of the resource group the Web Pubsub service is located in.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getService.

type LookupServiceOutputArgs

type LookupServiceOutputArgs struct {
	// Specifies the name of the Web Pubsub service.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the name of the resource group the Web Pubsub service is located in.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getService.

func (LookupServiceOutputArgs) ElementType

func (LookupServiceOutputArgs) ElementType() reflect.Type

type LookupServiceResult

type LookupServiceResult struct {
	AadAuthEnabled bool   `pulumi:"aadAuthEnabled"`
	Capacity       int    `pulumi:"capacity"`
	ExternalIp     string `pulumi:"externalIp"`
	// The FQDN of the Web Pubsub service.
	Hostname string `pulumi:"hostname"`
	// The provider-assigned unique ID for this managed resource.
	Id               string `pulumi:"id"`
	LocalAuthEnabled bool   `pulumi:"localAuthEnabled"`
	// The Azure location where the Web Pubsub service exists.
	Location string `pulumi:"location"`
	Name     string `pulumi:"name"`
	// The primary access key of the Web Pubsub service.
	PrimaryAccessKey string `pulumi:"primaryAccessKey"`
	// The primary connection string of the Web Pubsub service.
	PrimaryConnectionString    string `pulumi:"primaryConnectionString"`
	PublicNetworkAccessEnabled bool   `pulumi:"publicNetworkAccessEnabled"`
	// The publicly accessible port of the Web Pubsub service which is designed for browser/client use.
	PublicPort        int    `pulumi:"publicPort"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// The secondary access key of the Web Pubsub service.
	SecondaryAccessKey string `pulumi:"secondaryAccessKey"`
	// The secondary connection string of the Web Pubsub service.
	SecondaryConnectionString string `pulumi:"secondaryConnectionString"`
	// The publicly accessible port of the Web Pubsub service which is designed for customer server side use.
	ServerPort           int               `pulumi:"serverPort"`
	Sku                  string            `pulumi:"sku"`
	Tags                 map[string]string `pulumi:"tags"`
	TlsClientCertEnabled bool              `pulumi:"tlsClientCertEnabled"`
	Version              string            `pulumi:"version"`
}

A collection of values returned by getService.

func LookupService

func LookupService(ctx *pulumi.Context, args *LookupServiceArgs, opts ...pulumi.InvokeOption) (*LookupServiceResult, error)

Use this data source to access information about an existing Azure Web Pubsub service.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/webpubsub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := webpubsub.LookupService(ctx, &webpubsub.LookupServiceArgs{
			Name:              "test-webpubsub",
			ResourceGroupName: "wps-resource-group",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupServiceResultOutput

type LookupServiceResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getService.

func (LookupServiceResultOutput) AadAuthEnabled

func (o LookupServiceResultOutput) AadAuthEnabled() pulumi.BoolOutput

func (LookupServiceResultOutput) Capacity

func (LookupServiceResultOutput) ElementType

func (LookupServiceResultOutput) ElementType() reflect.Type

func (LookupServiceResultOutput) ExternalIp

func (LookupServiceResultOutput) Hostname

The FQDN of the Web Pubsub service.

func (LookupServiceResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupServiceResultOutput) LocalAuthEnabled

func (o LookupServiceResultOutput) LocalAuthEnabled() pulumi.BoolOutput

func (LookupServiceResultOutput) Location

The Azure location where the Web Pubsub service exists.

func (LookupServiceResultOutput) Name

func (LookupServiceResultOutput) PrimaryAccessKey

func (o LookupServiceResultOutput) PrimaryAccessKey() pulumi.StringOutput

The primary access key of the Web Pubsub service.

func (LookupServiceResultOutput) PrimaryConnectionString

func (o LookupServiceResultOutput) PrimaryConnectionString() pulumi.StringOutput

The primary connection string of the Web Pubsub service.

func (LookupServiceResultOutput) PublicNetworkAccessEnabled

func (o LookupServiceResultOutput) PublicNetworkAccessEnabled() pulumi.BoolOutput

func (LookupServiceResultOutput) PublicPort

The publicly accessible port of the Web Pubsub service which is designed for browser/client use.

func (LookupServiceResultOutput) ResourceGroupName

func (o LookupServiceResultOutput) ResourceGroupName() pulumi.StringOutput

func (LookupServiceResultOutput) SecondaryAccessKey

func (o LookupServiceResultOutput) SecondaryAccessKey() pulumi.StringOutput

The secondary access key of the Web Pubsub service.

func (LookupServiceResultOutput) SecondaryConnectionString

func (o LookupServiceResultOutput) SecondaryConnectionString() pulumi.StringOutput

The secondary connection string of the Web Pubsub service.

func (LookupServiceResultOutput) ServerPort

The publicly accessible port of the Web Pubsub service which is designed for customer server side use.

func (LookupServiceResultOutput) Sku

func (LookupServiceResultOutput) Tags

func (LookupServiceResultOutput) TlsClientCertEnabled

func (o LookupServiceResultOutput) TlsClientCertEnabled() pulumi.BoolOutput

func (LookupServiceResultOutput) ToLookupServiceResultOutput

func (o LookupServiceResultOutput) ToLookupServiceResultOutput() LookupServiceResultOutput

func (LookupServiceResultOutput) ToLookupServiceResultOutputWithContext

func (o LookupServiceResultOutput) ToLookupServiceResultOutputWithContext(ctx context.Context) LookupServiceResultOutput

func (LookupServiceResultOutput) Version

type NetworkAcl

type NetworkAcl struct {
	pulumi.CustomResourceState

	// The default action to control the network access when no other rule matches. Possible values are `Allow` and `Deny`. Defaults to `Deny`.
	DefaultAction pulumi.StringPtrOutput `pulumi:"defaultAction"`
	// A `privateEndpoint` block as defined below.
	PrivateEndpoints NetworkAclPrivateEndpointArrayOutput `pulumi:"privateEndpoints"`
	// A `publicNetwork` block as defined below.
	PublicNetwork NetworkAclPublicNetworkOutput `pulumi:"publicNetwork"`
	// The ID of the Web Pubsub service. Changing this forces a new resource to be created.
	WebPubsubId pulumi.StringOutput `pulumi:"webPubsubId"`
}

Manages the Network ACL for a Web Pubsub.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/privatelink"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/webpubsub"
"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("terraform-webpubsub"),
			Location: pulumi.String("east us"),
		})
		if err != nil {
			return err
		}
		exampleService, err := webpubsub.NewService(ctx, "example", &webpubsub.ServiceArgs{
			Name:              pulumi.String("tfex-webpubsub"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			Sku:               pulumi.String("Standard_S1"),
			Capacity:          pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name:              pulumi.String("example-vnet"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			AddressSpaces: pulumi.StringArray{
				pulumi.String("10.5.0.0/16"),
			},
		})
		if err != nil {
			return err
		}
		exampleSubnet, err := network.NewSubnet(ctx, "example", &network.SubnetArgs{
			Name:               pulumi.String("example-subnet"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.5.2.0/24"),
			},
			EnforcePrivateLinkEndpointNetworkPolicies: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		exampleEndpoint, err := privatelink.NewEndpoint(ctx, "example", &privatelink.EndpointArgs{
			Name:              pulumi.String("example-privateendpoint"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			SubnetId:          exampleSubnet.ID(),
			PrivateServiceConnection: &privatelink.EndpointPrivateServiceConnectionArgs{
				Name:                        pulumi.String("psc-sig-test"),
				IsManualConnection:          pulumi.Bool(false),
				PrivateConnectionResourceId: exampleService.ID(),
				SubresourceNames: pulumi.StringArray{
					pulumi.String("webpubsub"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = webpubsub.NewNetworkAcl(ctx, "example", &webpubsub.NetworkAclArgs{
			WebPubsubId:   exampleService.ID(),
			DefaultAction: pulumi.String("Allow"),
			PublicNetwork: &webpubsub.NetworkAclPublicNetworkArgs{
				DeniedRequestTypes: pulumi.StringArray{
					pulumi.String("ClientConnection"),
				},
			},
			PrivateEndpoints: webpubsub.NetworkAclPrivateEndpointArray{
				&webpubsub.NetworkAclPrivateEndpointArgs{
					Id: exampleEndpoint.ID(),
					DeniedRequestTypes: pulumi.StringArray{
						pulumi.String("RESTAPI"),
						pulumi.String("ClientConnection"),
					},
				},
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			exampleEndpoint,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Network ACLs for a Web Pubsub service can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:webpubsub/networkAcl:NetworkAcl example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.SignalRService/webPubSub/webpubsub1 ```

func GetNetworkAcl

func GetNetworkAcl(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkAclState, opts ...pulumi.ResourceOption) (*NetworkAcl, error)

GetNetworkAcl gets an existing NetworkAcl 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 NewNetworkAcl

func NewNetworkAcl(ctx *pulumi.Context,
	name string, args *NetworkAclArgs, opts ...pulumi.ResourceOption) (*NetworkAcl, error)

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

func (*NetworkAcl) ElementType

func (*NetworkAcl) ElementType() reflect.Type

func (*NetworkAcl) ToNetworkAclOutput

func (i *NetworkAcl) ToNetworkAclOutput() NetworkAclOutput

func (*NetworkAcl) ToNetworkAclOutputWithContext

func (i *NetworkAcl) ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput

type NetworkAclArgs

type NetworkAclArgs struct {
	// The default action to control the network access when no other rule matches. Possible values are `Allow` and `Deny`. Defaults to `Deny`.
	DefaultAction pulumi.StringPtrInput
	// A `privateEndpoint` block as defined below.
	PrivateEndpoints NetworkAclPrivateEndpointArrayInput
	// A `publicNetwork` block as defined below.
	PublicNetwork NetworkAclPublicNetworkInput
	// The ID of the Web Pubsub service. Changing this forces a new resource to be created.
	WebPubsubId pulumi.StringInput
}

The set of arguments for constructing a NetworkAcl resource.

func (NetworkAclArgs) ElementType

func (NetworkAclArgs) ElementType() reflect.Type

type NetworkAclArray

type NetworkAclArray []NetworkAclInput

func (NetworkAclArray) ElementType

func (NetworkAclArray) ElementType() reflect.Type

func (NetworkAclArray) ToNetworkAclArrayOutput

func (i NetworkAclArray) ToNetworkAclArrayOutput() NetworkAclArrayOutput

func (NetworkAclArray) ToNetworkAclArrayOutputWithContext

func (i NetworkAclArray) ToNetworkAclArrayOutputWithContext(ctx context.Context) NetworkAclArrayOutput

type NetworkAclArrayInput

type NetworkAclArrayInput interface {
	pulumi.Input

	ToNetworkAclArrayOutput() NetworkAclArrayOutput
	ToNetworkAclArrayOutputWithContext(context.Context) NetworkAclArrayOutput
}

NetworkAclArrayInput is an input type that accepts NetworkAclArray and NetworkAclArrayOutput values. You can construct a concrete instance of `NetworkAclArrayInput` via:

NetworkAclArray{ NetworkAclArgs{...} }

type NetworkAclArrayOutput

type NetworkAclArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclArrayOutput) ElementType

func (NetworkAclArrayOutput) ElementType() reflect.Type

func (NetworkAclArrayOutput) Index

func (NetworkAclArrayOutput) ToNetworkAclArrayOutput

func (o NetworkAclArrayOutput) ToNetworkAclArrayOutput() NetworkAclArrayOutput

func (NetworkAclArrayOutput) ToNetworkAclArrayOutputWithContext

func (o NetworkAclArrayOutput) ToNetworkAclArrayOutputWithContext(ctx context.Context) NetworkAclArrayOutput

type NetworkAclInput

type NetworkAclInput interface {
	pulumi.Input

	ToNetworkAclOutput() NetworkAclOutput
	ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput
}

type NetworkAclMap

type NetworkAclMap map[string]NetworkAclInput

func (NetworkAclMap) ElementType

func (NetworkAclMap) ElementType() reflect.Type

func (NetworkAclMap) ToNetworkAclMapOutput

func (i NetworkAclMap) ToNetworkAclMapOutput() NetworkAclMapOutput

func (NetworkAclMap) ToNetworkAclMapOutputWithContext

func (i NetworkAclMap) ToNetworkAclMapOutputWithContext(ctx context.Context) NetworkAclMapOutput

type NetworkAclMapInput

type NetworkAclMapInput interface {
	pulumi.Input

	ToNetworkAclMapOutput() NetworkAclMapOutput
	ToNetworkAclMapOutputWithContext(context.Context) NetworkAclMapOutput
}

NetworkAclMapInput is an input type that accepts NetworkAclMap and NetworkAclMapOutput values. You can construct a concrete instance of `NetworkAclMapInput` via:

NetworkAclMap{ "key": NetworkAclArgs{...} }

type NetworkAclMapOutput

type NetworkAclMapOutput struct{ *pulumi.OutputState }

func (NetworkAclMapOutput) ElementType

func (NetworkAclMapOutput) ElementType() reflect.Type

func (NetworkAclMapOutput) MapIndex

func (NetworkAclMapOutput) ToNetworkAclMapOutput

func (o NetworkAclMapOutput) ToNetworkAclMapOutput() NetworkAclMapOutput

func (NetworkAclMapOutput) ToNetworkAclMapOutputWithContext

func (o NetworkAclMapOutput) ToNetworkAclMapOutputWithContext(ctx context.Context) NetworkAclMapOutput

type NetworkAclOutput

type NetworkAclOutput struct{ *pulumi.OutputState }

func (NetworkAclOutput) DefaultAction added in v5.5.0

func (o NetworkAclOutput) DefaultAction() pulumi.StringPtrOutput

The default action to control the network access when no other rule matches. Possible values are `Allow` and `Deny`. Defaults to `Deny`.

func (NetworkAclOutput) ElementType

func (NetworkAclOutput) ElementType() reflect.Type

func (NetworkAclOutput) PrivateEndpoints added in v5.5.0

A `privateEndpoint` block as defined below.

func (NetworkAclOutput) PublicNetwork added in v5.5.0

A `publicNetwork` block as defined below.

func (NetworkAclOutput) ToNetworkAclOutput

func (o NetworkAclOutput) ToNetworkAclOutput() NetworkAclOutput

func (NetworkAclOutput) ToNetworkAclOutputWithContext

func (o NetworkAclOutput) ToNetworkAclOutputWithContext(ctx context.Context) NetworkAclOutput

func (NetworkAclOutput) WebPubsubId added in v5.5.0

func (o NetworkAclOutput) WebPubsubId() pulumi.StringOutput

The ID of the Web Pubsub service. Changing this forces a new resource to be created.

type NetworkAclPrivateEndpoint

type NetworkAclPrivateEndpoint struct {
	// The allowed request types for the Private Endpoint Connection. Possible values are `ClientConnection`, `ServerConnection`, `RESTAPI` and `Trace`.
	AllowedRequestTypes []string `pulumi:"allowedRequestTypes"`
	// The denied request types for the Private Endpoint Connection. Possible values are `ClientConnection`, `ServerConnection`, `RESTAPI` and `Trace`.
	//
	// > **NOTE:** When `defaultAction` is `Allow`, `allowedRequestTypes`cannot be set. When `defaultAction` is `Deny`, `deniedRequestTypes`cannot be set.
	DeniedRequestTypes []string `pulumi:"deniedRequestTypes"`
	// The ID of the Private Endpoint which is based on the Web Pubsub service.
	Id string `pulumi:"id"`
}

type NetworkAclPrivateEndpointArgs

type NetworkAclPrivateEndpointArgs struct {
	// The allowed request types for the Private Endpoint Connection. Possible values are `ClientConnection`, `ServerConnection`, `RESTAPI` and `Trace`.
	AllowedRequestTypes pulumi.StringArrayInput `pulumi:"allowedRequestTypes"`
	// The denied request types for the Private Endpoint Connection. Possible values are `ClientConnection`, `ServerConnection`, `RESTAPI` and `Trace`.
	//
	// > **NOTE:** When `defaultAction` is `Allow`, `allowedRequestTypes`cannot be set. When `defaultAction` is `Deny`, `deniedRequestTypes`cannot be set.
	DeniedRequestTypes pulumi.StringArrayInput `pulumi:"deniedRequestTypes"`
	// The ID of the Private Endpoint which is based on the Web Pubsub service.
	Id pulumi.StringInput `pulumi:"id"`
}

func (NetworkAclPrivateEndpointArgs) ElementType

func (NetworkAclPrivateEndpointArgs) ToNetworkAclPrivateEndpointOutput

func (i NetworkAclPrivateEndpointArgs) ToNetworkAclPrivateEndpointOutput() NetworkAclPrivateEndpointOutput

func (NetworkAclPrivateEndpointArgs) ToNetworkAclPrivateEndpointOutputWithContext

func (i NetworkAclPrivateEndpointArgs) ToNetworkAclPrivateEndpointOutputWithContext(ctx context.Context) NetworkAclPrivateEndpointOutput

type NetworkAclPrivateEndpointArray

type NetworkAclPrivateEndpointArray []NetworkAclPrivateEndpointInput

func (NetworkAclPrivateEndpointArray) ElementType

func (NetworkAclPrivateEndpointArray) ToNetworkAclPrivateEndpointArrayOutput

func (i NetworkAclPrivateEndpointArray) ToNetworkAclPrivateEndpointArrayOutput() NetworkAclPrivateEndpointArrayOutput

func (NetworkAclPrivateEndpointArray) ToNetworkAclPrivateEndpointArrayOutputWithContext

func (i NetworkAclPrivateEndpointArray) ToNetworkAclPrivateEndpointArrayOutputWithContext(ctx context.Context) NetworkAclPrivateEndpointArrayOutput

type NetworkAclPrivateEndpointArrayInput

type NetworkAclPrivateEndpointArrayInput interface {
	pulumi.Input

	ToNetworkAclPrivateEndpointArrayOutput() NetworkAclPrivateEndpointArrayOutput
	ToNetworkAclPrivateEndpointArrayOutputWithContext(context.Context) NetworkAclPrivateEndpointArrayOutput
}

NetworkAclPrivateEndpointArrayInput is an input type that accepts NetworkAclPrivateEndpointArray and NetworkAclPrivateEndpointArrayOutput values. You can construct a concrete instance of `NetworkAclPrivateEndpointArrayInput` via:

NetworkAclPrivateEndpointArray{ NetworkAclPrivateEndpointArgs{...} }

type NetworkAclPrivateEndpointArrayOutput

type NetworkAclPrivateEndpointArrayOutput struct{ *pulumi.OutputState }

func (NetworkAclPrivateEndpointArrayOutput) ElementType

func (NetworkAclPrivateEndpointArrayOutput) Index

func (NetworkAclPrivateEndpointArrayOutput) ToNetworkAclPrivateEndpointArrayOutput

func (o NetworkAclPrivateEndpointArrayOutput) ToNetworkAclPrivateEndpointArrayOutput() NetworkAclPrivateEndpointArrayOutput

func (NetworkAclPrivateEndpointArrayOutput) ToNetworkAclPrivateEndpointArrayOutputWithContext

func (o NetworkAclPrivateEndpointArrayOutput) ToNetworkAclPrivateEndpointArrayOutputWithContext(ctx context.Context) NetworkAclPrivateEndpointArrayOutput

type NetworkAclPrivateEndpointInput

type NetworkAclPrivateEndpointInput interface {
	pulumi.Input

	ToNetworkAclPrivateEndpointOutput() NetworkAclPrivateEndpointOutput
	ToNetworkAclPrivateEndpointOutputWithContext(context.Context) NetworkAclPrivateEndpointOutput
}

NetworkAclPrivateEndpointInput is an input type that accepts NetworkAclPrivateEndpointArgs and NetworkAclPrivateEndpointOutput values. You can construct a concrete instance of `NetworkAclPrivateEndpointInput` via:

NetworkAclPrivateEndpointArgs{...}

type NetworkAclPrivateEndpointOutput

type NetworkAclPrivateEndpointOutput struct{ *pulumi.OutputState }

func (NetworkAclPrivateEndpointOutput) AllowedRequestTypes

The allowed request types for the Private Endpoint Connection. Possible values are `ClientConnection`, `ServerConnection`, `RESTAPI` and `Trace`.

func (NetworkAclPrivateEndpointOutput) DeniedRequestTypes

The denied request types for the Private Endpoint Connection. Possible values are `ClientConnection`, `ServerConnection`, `RESTAPI` and `Trace`.

> **NOTE:** When `defaultAction` is `Allow`, `allowedRequestTypes`cannot be set. When `defaultAction` is `Deny`, `deniedRequestTypes`cannot be set.

func (NetworkAclPrivateEndpointOutput) ElementType

func (NetworkAclPrivateEndpointOutput) Id

The ID of the Private Endpoint which is based on the Web Pubsub service.

func (NetworkAclPrivateEndpointOutput) ToNetworkAclPrivateEndpointOutput

func (o NetworkAclPrivateEndpointOutput) ToNetworkAclPrivateEndpointOutput() NetworkAclPrivateEndpointOutput

func (NetworkAclPrivateEndpointOutput) ToNetworkAclPrivateEndpointOutputWithContext

func (o NetworkAclPrivateEndpointOutput) ToNetworkAclPrivateEndpointOutputWithContext(ctx context.Context) NetworkAclPrivateEndpointOutput

type NetworkAclPublicNetwork

type NetworkAclPublicNetwork struct {
	// The allowed request types for the public network. Possible values are `ClientConnection`, `ServerConnection`, `RESTAPI` and `Trace`.
	AllowedRequestTypes []string `pulumi:"allowedRequestTypes"`
	// The denied request types for the public network. Possible values are `ClientConnection`, `ServerConnection`, `RESTAPI` and `Trace`.
	//
	// > **NOTE:** When `defaultAction` is `Allow`, `allowedRequestTypes`cannot be set. When `defaultAction` is `Deny`, `deniedRequestTypes`cannot be set.
	DeniedRequestTypes []string `pulumi:"deniedRequestTypes"`
}

type NetworkAclPublicNetworkArgs

type NetworkAclPublicNetworkArgs struct {
	// The allowed request types for the public network. Possible values are `ClientConnection`, `ServerConnection`, `RESTAPI` and `Trace`.
	AllowedRequestTypes pulumi.StringArrayInput `pulumi:"allowedRequestTypes"`
	// The denied request types for the public network. Possible values are `ClientConnection`, `ServerConnection`, `RESTAPI` and `Trace`.
	//
	// > **NOTE:** When `defaultAction` is `Allow`, `allowedRequestTypes`cannot be set. When `defaultAction` is `Deny`, `deniedRequestTypes`cannot be set.
	DeniedRequestTypes pulumi.StringArrayInput `pulumi:"deniedRequestTypes"`
}

func (NetworkAclPublicNetworkArgs) ElementType

func (NetworkAclPublicNetworkArgs) ToNetworkAclPublicNetworkOutput

func (i NetworkAclPublicNetworkArgs) ToNetworkAclPublicNetworkOutput() NetworkAclPublicNetworkOutput

func (NetworkAclPublicNetworkArgs) ToNetworkAclPublicNetworkOutputWithContext

func (i NetworkAclPublicNetworkArgs) ToNetworkAclPublicNetworkOutputWithContext(ctx context.Context) NetworkAclPublicNetworkOutput

func (NetworkAclPublicNetworkArgs) ToNetworkAclPublicNetworkPtrOutput

func (i NetworkAclPublicNetworkArgs) ToNetworkAclPublicNetworkPtrOutput() NetworkAclPublicNetworkPtrOutput

func (NetworkAclPublicNetworkArgs) ToNetworkAclPublicNetworkPtrOutputWithContext

func (i NetworkAclPublicNetworkArgs) ToNetworkAclPublicNetworkPtrOutputWithContext(ctx context.Context) NetworkAclPublicNetworkPtrOutput

type NetworkAclPublicNetworkInput

type NetworkAclPublicNetworkInput interface {
	pulumi.Input

	ToNetworkAclPublicNetworkOutput() NetworkAclPublicNetworkOutput
	ToNetworkAclPublicNetworkOutputWithContext(context.Context) NetworkAclPublicNetworkOutput
}

NetworkAclPublicNetworkInput is an input type that accepts NetworkAclPublicNetworkArgs and NetworkAclPublicNetworkOutput values. You can construct a concrete instance of `NetworkAclPublicNetworkInput` via:

NetworkAclPublicNetworkArgs{...}

type NetworkAclPublicNetworkOutput

type NetworkAclPublicNetworkOutput struct{ *pulumi.OutputState }

func (NetworkAclPublicNetworkOutput) AllowedRequestTypes

func (o NetworkAclPublicNetworkOutput) AllowedRequestTypes() pulumi.StringArrayOutput

The allowed request types for the public network. Possible values are `ClientConnection`, `ServerConnection`, `RESTAPI` and `Trace`.

func (NetworkAclPublicNetworkOutput) DeniedRequestTypes

The denied request types for the public network. Possible values are `ClientConnection`, `ServerConnection`, `RESTAPI` and `Trace`.

> **NOTE:** When `defaultAction` is `Allow`, `allowedRequestTypes`cannot be set. When `defaultAction` is `Deny`, `deniedRequestTypes`cannot be set.

func (NetworkAclPublicNetworkOutput) ElementType

func (NetworkAclPublicNetworkOutput) ToNetworkAclPublicNetworkOutput

func (o NetworkAclPublicNetworkOutput) ToNetworkAclPublicNetworkOutput() NetworkAclPublicNetworkOutput

func (NetworkAclPublicNetworkOutput) ToNetworkAclPublicNetworkOutputWithContext

func (o NetworkAclPublicNetworkOutput) ToNetworkAclPublicNetworkOutputWithContext(ctx context.Context) NetworkAclPublicNetworkOutput

func (NetworkAclPublicNetworkOutput) ToNetworkAclPublicNetworkPtrOutput

func (o NetworkAclPublicNetworkOutput) ToNetworkAclPublicNetworkPtrOutput() NetworkAclPublicNetworkPtrOutput

func (NetworkAclPublicNetworkOutput) ToNetworkAclPublicNetworkPtrOutputWithContext

func (o NetworkAclPublicNetworkOutput) ToNetworkAclPublicNetworkPtrOutputWithContext(ctx context.Context) NetworkAclPublicNetworkPtrOutput

type NetworkAclPublicNetworkPtrInput

type NetworkAclPublicNetworkPtrInput interface {
	pulumi.Input

	ToNetworkAclPublicNetworkPtrOutput() NetworkAclPublicNetworkPtrOutput
	ToNetworkAclPublicNetworkPtrOutputWithContext(context.Context) NetworkAclPublicNetworkPtrOutput
}

NetworkAclPublicNetworkPtrInput is an input type that accepts NetworkAclPublicNetworkArgs, NetworkAclPublicNetworkPtr and NetworkAclPublicNetworkPtrOutput values. You can construct a concrete instance of `NetworkAclPublicNetworkPtrInput` via:

        NetworkAclPublicNetworkArgs{...}

or:

        nil

type NetworkAclPublicNetworkPtrOutput

type NetworkAclPublicNetworkPtrOutput struct{ *pulumi.OutputState }

func (NetworkAclPublicNetworkPtrOutput) AllowedRequestTypes

The allowed request types for the public network. Possible values are `ClientConnection`, `ServerConnection`, `RESTAPI` and `Trace`.

func (NetworkAclPublicNetworkPtrOutput) DeniedRequestTypes

The denied request types for the public network. Possible values are `ClientConnection`, `ServerConnection`, `RESTAPI` and `Trace`.

> **NOTE:** When `defaultAction` is `Allow`, `allowedRequestTypes`cannot be set. When `defaultAction` is `Deny`, `deniedRequestTypes`cannot be set.

func (NetworkAclPublicNetworkPtrOutput) Elem

func (NetworkAclPublicNetworkPtrOutput) ElementType

func (NetworkAclPublicNetworkPtrOutput) ToNetworkAclPublicNetworkPtrOutput

func (o NetworkAclPublicNetworkPtrOutput) ToNetworkAclPublicNetworkPtrOutput() NetworkAclPublicNetworkPtrOutput

func (NetworkAclPublicNetworkPtrOutput) ToNetworkAclPublicNetworkPtrOutputWithContext

func (o NetworkAclPublicNetworkPtrOutput) ToNetworkAclPublicNetworkPtrOutputWithContext(ctx context.Context) NetworkAclPublicNetworkPtrOutput

type NetworkAclState

type NetworkAclState struct {
	// The default action to control the network access when no other rule matches. Possible values are `Allow` and `Deny`. Defaults to `Deny`.
	DefaultAction pulumi.StringPtrInput
	// A `privateEndpoint` block as defined below.
	PrivateEndpoints NetworkAclPrivateEndpointArrayInput
	// A `publicNetwork` block as defined below.
	PublicNetwork NetworkAclPublicNetworkPtrInput
	// The ID of the Web Pubsub service. Changing this forces a new resource to be created.
	WebPubsubId pulumi.StringPtrInput
}

func (NetworkAclState) ElementType

func (NetworkAclState) ElementType() reflect.Type

type Service

type Service struct {
	pulumi.CustomResourceState

	// Whether to enable AAD auth? Defaults to `true`.
	AadAuthEnabled pulumi.BoolPtrOutput `pulumi:"aadAuthEnabled"`
	// Specifies the number of units associated with this Web PubSub resource. Valid values are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `90`, `100`, `200`, `300`, `400`, `500`, `600`, `700`, `800`, `900` and `1000`.
	//
	// > **NOTE:** The valid capacity range for sku `Free_F1` is `1`, for sku `Premium_P2` is from `100` to `1000`, and from `1` to `100` for sku `Standard_S1` and `Premium_P1`.
	Capacity pulumi.IntPtrOutput `pulumi:"capacity"`
	// The publicly accessible IP of the Web PubSub service.
	ExternalIp pulumi.StringOutput `pulumi:"externalIp"`
	// The FQDN of the Web PubSub service.
	Hostname pulumi.StringOutput `pulumi:"hostname"`
	// An `identity` block as defined below.
	Identity ServiceIdentityPtrOutput `pulumi:"identity"`
	// A `liveTrace` block as defined below.
	LiveTrace ServiceLiveTracePtrOutput `pulumi:"liveTrace"`
	// Whether to enable local auth? Defaults to `true`.
	LocalAuthEnabled pulumi.BoolPtrOutput `pulumi:"localAuthEnabled"`
	// Specifies the supported Azure location where the Web PubSub service exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name of the Web PubSub service. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The primary access key for the Web PubSub service.
	PrimaryAccessKey pulumi.StringOutput `pulumi:"primaryAccessKey"`
	// The primary connection string for the Web PubSub service.
	PrimaryConnectionString pulumi.StringOutput `pulumi:"primaryConnectionString"`
	// Whether to enable public network access? Defaults to `true`.
	PublicNetworkAccessEnabled pulumi.BoolPtrOutput `pulumi:"publicNetworkAccessEnabled"`
	// The publicly accessible port of the Web PubSub service which is designed for browser/client use.
	PublicPort pulumi.IntOutput `pulumi:"publicPort"`
	// The name of the resource group in which to create the Web PubSub service. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// The secondary access key for the Web PubSub service.
	SecondaryAccessKey pulumi.StringOutput `pulumi:"secondaryAccessKey"`
	// The secondary connection string for the Web PubSub service.
	SecondaryConnectionString pulumi.StringOutput `pulumi:"secondaryConnectionString"`
	// The publicly accessible port of the Web PubSub service which is designed for customer server side use.
	ServerPort pulumi.IntOutput `pulumi:"serverPort"`
	// Specifies which SKU to use. Possible values are `Free_F1`, `Standard_S1`, `Premium_P1` and `Premium_P2`.
	Sku pulumi.StringOutput `pulumi:"sku"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Whether to request client certificate during TLS handshake? Defaults to `false`.
	TlsClientCertEnabled pulumi.BoolPtrOutput `pulumi:"tlsClientCertEnabled"`
	Version              pulumi.StringOutput  `pulumi:"version"`
}

Manages an Azure Web PubSub Service.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/webpubsub"
"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("terraform-webpubsub"),
			Location: pulumi.String("east us"),
		})
		if err != nil {
			return err
		}
		_, err = webpubsub.NewService(ctx, "example", &webpubsub.ServiceArgs{
			Name:                       pulumi.String("tfex-webpubsub"),
			Location:                   example.Location,
			ResourceGroupName:          example.Name,
			Sku:                        pulumi.String("Standard_S1"),
			Capacity:                   pulumi.Int(1),
			PublicNetworkAccessEnabled: pulumi.Bool(false),
			LiveTrace: &webpubsub.ServiceLiveTraceArgs{
				Enabled:                 pulumi.Bool(true),
				MessagingLogsEnabled:    pulumi.Bool(true),
				ConnectivityLogsEnabled: pulumi.Bool(false),
			},
			Identity: &webpubsub.ServiceIdentityArgs{
				Type: pulumi.String("SystemAssigned"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Web PubSub services can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:webpubsub/service:Service example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.SignalRService/webPubSub/pubsub1 ```

func GetService

func GetService(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ServiceState, opts ...pulumi.ResourceOption) (*Service, error)

GetService gets an existing Service 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 NewService

func NewService(ctx *pulumi.Context,
	name string, args *ServiceArgs, opts ...pulumi.ResourceOption) (*Service, error)

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

func (*Service) ElementType

func (*Service) ElementType() reflect.Type

func (*Service) ToServiceOutput

func (i *Service) ToServiceOutput() ServiceOutput

func (*Service) ToServiceOutputWithContext

func (i *Service) ToServiceOutputWithContext(ctx context.Context) ServiceOutput

type ServiceArgs

type ServiceArgs struct {
	// Whether to enable AAD auth? Defaults to `true`.
	AadAuthEnabled pulumi.BoolPtrInput
	// Specifies the number of units associated with this Web PubSub resource. Valid values are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `90`, `100`, `200`, `300`, `400`, `500`, `600`, `700`, `800`, `900` and `1000`.
	//
	// > **NOTE:** The valid capacity range for sku `Free_F1` is `1`, for sku `Premium_P2` is from `100` to `1000`, and from `1` to `100` for sku `Standard_S1` and `Premium_P1`.
	Capacity pulumi.IntPtrInput
	// An `identity` block as defined below.
	Identity ServiceIdentityPtrInput
	// A `liveTrace` block as defined below.
	LiveTrace ServiceLiveTracePtrInput
	// Whether to enable local auth? Defaults to `true`.
	LocalAuthEnabled pulumi.BoolPtrInput
	// Specifies the supported Azure location where the Web PubSub service exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Web PubSub service. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Whether to enable public network access? Defaults to `true`.
	PublicNetworkAccessEnabled pulumi.BoolPtrInput
	// The name of the resource group in which to create the Web PubSub service. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Specifies which SKU to use. Possible values are `Free_F1`, `Standard_S1`, `Premium_P1` and `Premium_P2`.
	Sku pulumi.StringInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Whether to request client certificate during TLS handshake? Defaults to `false`.
	TlsClientCertEnabled pulumi.BoolPtrInput
}

The set of arguments for constructing a Service resource.

func (ServiceArgs) ElementType

func (ServiceArgs) ElementType() reflect.Type

type ServiceArray

type ServiceArray []ServiceInput

func (ServiceArray) ElementType

func (ServiceArray) ElementType() reflect.Type

func (ServiceArray) ToServiceArrayOutput

func (i ServiceArray) ToServiceArrayOutput() ServiceArrayOutput

func (ServiceArray) ToServiceArrayOutputWithContext

func (i ServiceArray) ToServiceArrayOutputWithContext(ctx context.Context) ServiceArrayOutput

type ServiceArrayInput

type ServiceArrayInput interface {
	pulumi.Input

	ToServiceArrayOutput() ServiceArrayOutput
	ToServiceArrayOutputWithContext(context.Context) ServiceArrayOutput
}

ServiceArrayInput is an input type that accepts ServiceArray and ServiceArrayOutput values. You can construct a concrete instance of `ServiceArrayInput` via:

ServiceArray{ ServiceArgs{...} }

type ServiceArrayOutput

type ServiceArrayOutput struct{ *pulumi.OutputState }

func (ServiceArrayOutput) ElementType

func (ServiceArrayOutput) ElementType() reflect.Type

func (ServiceArrayOutput) Index

func (ServiceArrayOutput) ToServiceArrayOutput

func (o ServiceArrayOutput) ToServiceArrayOutput() ServiceArrayOutput

func (ServiceArrayOutput) ToServiceArrayOutputWithContext

func (o ServiceArrayOutput) ToServiceArrayOutputWithContext(ctx context.Context) ServiceArrayOutput

type ServiceIdentity

type ServiceIdentity struct {
	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Web PubSub.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned`
	IdentityIds []string `pulumi:"identityIds"`
	// The Principal ID associated with this Managed Service Identity.
	PrincipalId *string `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity.
	TenantId *string `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that should be configured on this Web PubSub. Possible values are `SystemAssigned`, `UserAssigned`.
	Type string `pulumi:"type"`
}

type ServiceIdentityArgs

type ServiceIdentityArgs struct {
	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Web PubSub.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned`
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The Principal ID associated with this Managed Service Identity.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that should be configured on this Web PubSub. Possible values are `SystemAssigned`, `UserAssigned`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (ServiceIdentityArgs) ElementType

func (ServiceIdentityArgs) ElementType() reflect.Type

func (ServiceIdentityArgs) ToServiceIdentityOutput

func (i ServiceIdentityArgs) ToServiceIdentityOutput() ServiceIdentityOutput

func (ServiceIdentityArgs) ToServiceIdentityOutputWithContext

func (i ServiceIdentityArgs) ToServiceIdentityOutputWithContext(ctx context.Context) ServiceIdentityOutput

func (ServiceIdentityArgs) ToServiceIdentityPtrOutput

func (i ServiceIdentityArgs) ToServiceIdentityPtrOutput() ServiceIdentityPtrOutput

func (ServiceIdentityArgs) ToServiceIdentityPtrOutputWithContext

func (i ServiceIdentityArgs) ToServiceIdentityPtrOutputWithContext(ctx context.Context) ServiceIdentityPtrOutput

type ServiceIdentityInput

type ServiceIdentityInput interface {
	pulumi.Input

	ToServiceIdentityOutput() ServiceIdentityOutput
	ToServiceIdentityOutputWithContext(context.Context) ServiceIdentityOutput
}

ServiceIdentityInput is an input type that accepts ServiceIdentityArgs and ServiceIdentityOutput values. You can construct a concrete instance of `ServiceIdentityInput` via:

ServiceIdentityArgs{...}

type ServiceIdentityOutput

type ServiceIdentityOutput struct{ *pulumi.OutputState }

func (ServiceIdentityOutput) ElementType

func (ServiceIdentityOutput) ElementType() reflect.Type

func (ServiceIdentityOutput) IdentityIds

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Web PubSub.

> **NOTE:** This is required when `type` is set to `UserAssigned`

func (ServiceIdentityOutput) PrincipalId

The Principal ID associated with this Managed Service Identity.

func (ServiceIdentityOutput) TenantId

The Tenant ID associated with this Managed Service Identity.

func (ServiceIdentityOutput) ToServiceIdentityOutput

func (o ServiceIdentityOutput) ToServiceIdentityOutput() ServiceIdentityOutput

func (ServiceIdentityOutput) ToServiceIdentityOutputWithContext

func (o ServiceIdentityOutput) ToServiceIdentityOutputWithContext(ctx context.Context) ServiceIdentityOutput

func (ServiceIdentityOutput) ToServiceIdentityPtrOutput

func (o ServiceIdentityOutput) ToServiceIdentityPtrOutput() ServiceIdentityPtrOutput

func (ServiceIdentityOutput) ToServiceIdentityPtrOutputWithContext

func (o ServiceIdentityOutput) ToServiceIdentityPtrOutputWithContext(ctx context.Context) ServiceIdentityPtrOutput

func (ServiceIdentityOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Web PubSub. Possible values are `SystemAssigned`, `UserAssigned`.

type ServiceIdentityPtrInput

type ServiceIdentityPtrInput interface {
	pulumi.Input

	ToServiceIdentityPtrOutput() ServiceIdentityPtrOutput
	ToServiceIdentityPtrOutputWithContext(context.Context) ServiceIdentityPtrOutput
}

ServiceIdentityPtrInput is an input type that accepts ServiceIdentityArgs, ServiceIdentityPtr and ServiceIdentityPtrOutput values. You can construct a concrete instance of `ServiceIdentityPtrInput` via:

        ServiceIdentityArgs{...}

or:

        nil

type ServiceIdentityPtrOutput

type ServiceIdentityPtrOutput struct{ *pulumi.OutputState }

func (ServiceIdentityPtrOutput) Elem

func (ServiceIdentityPtrOutput) ElementType

func (ServiceIdentityPtrOutput) ElementType() reflect.Type

func (ServiceIdentityPtrOutput) IdentityIds

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Web PubSub.

> **NOTE:** This is required when `type` is set to `UserAssigned`

func (ServiceIdentityPtrOutput) PrincipalId

The Principal ID associated with this Managed Service Identity.

func (ServiceIdentityPtrOutput) TenantId

The Tenant ID associated with this Managed Service Identity.

func (ServiceIdentityPtrOutput) ToServiceIdentityPtrOutput

func (o ServiceIdentityPtrOutput) ToServiceIdentityPtrOutput() ServiceIdentityPtrOutput

func (ServiceIdentityPtrOutput) ToServiceIdentityPtrOutputWithContext

func (o ServiceIdentityPtrOutput) ToServiceIdentityPtrOutputWithContext(ctx context.Context) ServiceIdentityPtrOutput

func (ServiceIdentityPtrOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Web PubSub. Possible values are `SystemAssigned`, `UserAssigned`.

type ServiceInput

type ServiceInput interface {
	pulumi.Input

	ToServiceOutput() ServiceOutput
	ToServiceOutputWithContext(ctx context.Context) ServiceOutput
}

type ServiceLiveTrace

type ServiceLiveTrace struct {
	// Whether the log category `ConnectivityLogs` is enabled? Defaults to `true`
	ConnectivityLogsEnabled *bool `pulumi:"connectivityLogsEnabled"`
	// Whether the live trace is enabled? Defaults to `true`.
	Enabled *bool `pulumi:"enabled"`
	// Whether the log category `HttpRequestLogs` is enabled? Defaults to `true`
	HttpRequestLogsEnabled *bool `pulumi:"httpRequestLogsEnabled"`
	// Whether the log category `MessagingLogs` is enabled? Defaults to `true`
	MessagingLogsEnabled *bool `pulumi:"messagingLogsEnabled"`
}

type ServiceLiveTraceArgs

type ServiceLiveTraceArgs struct {
	// Whether the log category `ConnectivityLogs` is enabled? Defaults to `true`
	ConnectivityLogsEnabled pulumi.BoolPtrInput `pulumi:"connectivityLogsEnabled"`
	// Whether the live trace is enabled? Defaults to `true`.
	Enabled pulumi.BoolPtrInput `pulumi:"enabled"`
	// Whether the log category `HttpRequestLogs` is enabled? Defaults to `true`
	HttpRequestLogsEnabled pulumi.BoolPtrInput `pulumi:"httpRequestLogsEnabled"`
	// Whether the log category `MessagingLogs` is enabled? Defaults to `true`
	MessagingLogsEnabled pulumi.BoolPtrInput `pulumi:"messagingLogsEnabled"`
}

func (ServiceLiveTraceArgs) ElementType

func (ServiceLiveTraceArgs) ElementType() reflect.Type

func (ServiceLiveTraceArgs) ToServiceLiveTraceOutput

func (i ServiceLiveTraceArgs) ToServiceLiveTraceOutput() ServiceLiveTraceOutput

func (ServiceLiveTraceArgs) ToServiceLiveTraceOutputWithContext

func (i ServiceLiveTraceArgs) ToServiceLiveTraceOutputWithContext(ctx context.Context) ServiceLiveTraceOutput

func (ServiceLiveTraceArgs) ToServiceLiveTracePtrOutput

func (i ServiceLiveTraceArgs) ToServiceLiveTracePtrOutput() ServiceLiveTracePtrOutput

func (ServiceLiveTraceArgs) ToServiceLiveTracePtrOutputWithContext

func (i ServiceLiveTraceArgs) ToServiceLiveTracePtrOutputWithContext(ctx context.Context) ServiceLiveTracePtrOutput

type ServiceLiveTraceInput

type ServiceLiveTraceInput interface {
	pulumi.Input

	ToServiceLiveTraceOutput() ServiceLiveTraceOutput
	ToServiceLiveTraceOutputWithContext(context.Context) ServiceLiveTraceOutput
}

ServiceLiveTraceInput is an input type that accepts ServiceLiveTraceArgs and ServiceLiveTraceOutput values. You can construct a concrete instance of `ServiceLiveTraceInput` via:

ServiceLiveTraceArgs{...}

type ServiceLiveTraceOutput

type ServiceLiveTraceOutput struct{ *pulumi.OutputState }

func (ServiceLiveTraceOutput) ConnectivityLogsEnabled

func (o ServiceLiveTraceOutput) ConnectivityLogsEnabled() pulumi.BoolPtrOutput

Whether the log category `ConnectivityLogs` is enabled? Defaults to `true`

func (ServiceLiveTraceOutput) ElementType

func (ServiceLiveTraceOutput) ElementType() reflect.Type

func (ServiceLiveTraceOutput) Enabled

Whether the live trace is enabled? Defaults to `true`.

func (ServiceLiveTraceOutput) HttpRequestLogsEnabled

func (o ServiceLiveTraceOutput) HttpRequestLogsEnabled() pulumi.BoolPtrOutput

Whether the log category `HttpRequestLogs` is enabled? Defaults to `true`

func (ServiceLiveTraceOutput) MessagingLogsEnabled

func (o ServiceLiveTraceOutput) MessagingLogsEnabled() pulumi.BoolPtrOutput

Whether the log category `MessagingLogs` is enabled? Defaults to `true`

func (ServiceLiveTraceOutput) ToServiceLiveTraceOutput

func (o ServiceLiveTraceOutput) ToServiceLiveTraceOutput() ServiceLiveTraceOutput

func (ServiceLiveTraceOutput) ToServiceLiveTraceOutputWithContext

func (o ServiceLiveTraceOutput) ToServiceLiveTraceOutputWithContext(ctx context.Context) ServiceLiveTraceOutput

func (ServiceLiveTraceOutput) ToServiceLiveTracePtrOutput

func (o ServiceLiveTraceOutput) ToServiceLiveTracePtrOutput() ServiceLiveTracePtrOutput

func (ServiceLiveTraceOutput) ToServiceLiveTracePtrOutputWithContext

func (o ServiceLiveTraceOutput) ToServiceLiveTracePtrOutputWithContext(ctx context.Context) ServiceLiveTracePtrOutput

type ServiceLiveTracePtrInput

type ServiceLiveTracePtrInput interface {
	pulumi.Input

	ToServiceLiveTracePtrOutput() ServiceLiveTracePtrOutput
	ToServiceLiveTracePtrOutputWithContext(context.Context) ServiceLiveTracePtrOutput
}

ServiceLiveTracePtrInput is an input type that accepts ServiceLiveTraceArgs, ServiceLiveTracePtr and ServiceLiveTracePtrOutput values. You can construct a concrete instance of `ServiceLiveTracePtrInput` via:

        ServiceLiveTraceArgs{...}

or:

        nil

type ServiceLiveTracePtrOutput

type ServiceLiveTracePtrOutput struct{ *pulumi.OutputState }

func (ServiceLiveTracePtrOutput) ConnectivityLogsEnabled

func (o ServiceLiveTracePtrOutput) ConnectivityLogsEnabled() pulumi.BoolPtrOutput

Whether the log category `ConnectivityLogs` is enabled? Defaults to `true`

func (ServiceLiveTracePtrOutput) Elem

func (ServiceLiveTracePtrOutput) ElementType

func (ServiceLiveTracePtrOutput) ElementType() reflect.Type

func (ServiceLiveTracePtrOutput) Enabled

Whether the live trace is enabled? Defaults to `true`.

func (ServiceLiveTracePtrOutput) HttpRequestLogsEnabled

func (o ServiceLiveTracePtrOutput) HttpRequestLogsEnabled() pulumi.BoolPtrOutput

Whether the log category `HttpRequestLogs` is enabled? Defaults to `true`

func (ServiceLiveTracePtrOutput) MessagingLogsEnabled

func (o ServiceLiveTracePtrOutput) MessagingLogsEnabled() pulumi.BoolPtrOutput

Whether the log category `MessagingLogs` is enabled? Defaults to `true`

func (ServiceLiveTracePtrOutput) ToServiceLiveTracePtrOutput

func (o ServiceLiveTracePtrOutput) ToServiceLiveTracePtrOutput() ServiceLiveTracePtrOutput

func (ServiceLiveTracePtrOutput) ToServiceLiveTracePtrOutputWithContext

func (o ServiceLiveTracePtrOutput) ToServiceLiveTracePtrOutputWithContext(ctx context.Context) ServiceLiveTracePtrOutput

type ServiceMap

type ServiceMap map[string]ServiceInput

func (ServiceMap) ElementType

func (ServiceMap) ElementType() reflect.Type

func (ServiceMap) ToServiceMapOutput

func (i ServiceMap) ToServiceMapOutput() ServiceMapOutput

func (ServiceMap) ToServiceMapOutputWithContext

func (i ServiceMap) ToServiceMapOutputWithContext(ctx context.Context) ServiceMapOutput

type ServiceMapInput

type ServiceMapInput interface {
	pulumi.Input

	ToServiceMapOutput() ServiceMapOutput
	ToServiceMapOutputWithContext(context.Context) ServiceMapOutput
}

ServiceMapInput is an input type that accepts ServiceMap and ServiceMapOutput values. You can construct a concrete instance of `ServiceMapInput` via:

ServiceMap{ "key": ServiceArgs{...} }

type ServiceMapOutput

type ServiceMapOutput struct{ *pulumi.OutputState }

func (ServiceMapOutput) ElementType

func (ServiceMapOutput) ElementType() reflect.Type

func (ServiceMapOutput) MapIndex

func (ServiceMapOutput) ToServiceMapOutput

func (o ServiceMapOutput) ToServiceMapOutput() ServiceMapOutput

func (ServiceMapOutput) ToServiceMapOutputWithContext

func (o ServiceMapOutput) ToServiceMapOutputWithContext(ctx context.Context) ServiceMapOutput

type ServiceOutput

type ServiceOutput struct{ *pulumi.OutputState }

func (ServiceOutput) AadAuthEnabled added in v5.5.0

func (o ServiceOutput) AadAuthEnabled() pulumi.BoolPtrOutput

Whether to enable AAD auth? Defaults to `true`.

func (ServiceOutput) Capacity added in v5.5.0

func (o ServiceOutput) Capacity() pulumi.IntPtrOutput

Specifies the number of units associated with this Web PubSub resource. Valid values are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `90`, `100`, `200`, `300`, `400`, `500`, `600`, `700`, `800`, `900` and `1000`.

> **NOTE:** The valid capacity range for sku `Free_F1` is `1`, for sku `Premium_P2` is from `100` to `1000`, and from `1` to `100` for sku `Standard_S1` and `Premium_P1`.

func (ServiceOutput) ElementType

func (ServiceOutput) ElementType() reflect.Type

func (ServiceOutput) ExternalIp added in v5.5.0

func (o ServiceOutput) ExternalIp() pulumi.StringOutput

The publicly accessible IP of the Web PubSub service.

func (ServiceOutput) Hostname added in v5.5.0

func (o ServiceOutput) Hostname() pulumi.StringOutput

The FQDN of the Web PubSub service.

func (ServiceOutput) Identity added in v5.5.0

An `identity` block as defined below.

func (ServiceOutput) LiveTrace added in v5.5.0

A `liveTrace` block as defined below.

func (ServiceOutput) LocalAuthEnabled added in v5.5.0

func (o ServiceOutput) LocalAuthEnabled() pulumi.BoolPtrOutput

Whether to enable local auth? Defaults to `true`.

func (ServiceOutput) Location added in v5.5.0

func (o ServiceOutput) Location() pulumi.StringOutput

Specifies the supported Azure location where the Web PubSub service exists. Changing this forces a new resource to be created.

func (ServiceOutput) Name added in v5.5.0

The name of the Web PubSub service. Changing this forces a new resource to be created.

func (ServiceOutput) PrimaryAccessKey added in v5.5.0

func (o ServiceOutput) PrimaryAccessKey() pulumi.StringOutput

The primary access key for the Web PubSub service.

func (ServiceOutput) PrimaryConnectionString added in v5.5.0

func (o ServiceOutput) PrimaryConnectionString() pulumi.StringOutput

The primary connection string for the Web PubSub service.

func (ServiceOutput) PublicNetworkAccessEnabled added in v5.5.0

func (o ServiceOutput) PublicNetworkAccessEnabled() pulumi.BoolPtrOutput

Whether to enable public network access? Defaults to `true`.

func (ServiceOutput) PublicPort added in v5.5.0

func (o ServiceOutput) PublicPort() pulumi.IntOutput

The publicly accessible port of the Web PubSub service which is designed for browser/client use.

func (ServiceOutput) ResourceGroupName added in v5.5.0

func (o ServiceOutput) ResourceGroupName() pulumi.StringOutput

The name of the resource group in which to create the Web PubSub service. Changing this forces a new resource to be created.

func (ServiceOutput) SecondaryAccessKey added in v5.5.0

func (o ServiceOutput) SecondaryAccessKey() pulumi.StringOutput

The secondary access key for the Web PubSub service.

func (ServiceOutput) SecondaryConnectionString added in v5.5.0

func (o ServiceOutput) SecondaryConnectionString() pulumi.StringOutput

The secondary connection string for the Web PubSub service.

func (ServiceOutput) ServerPort added in v5.5.0

func (o ServiceOutput) ServerPort() pulumi.IntOutput

The publicly accessible port of the Web PubSub service which is designed for customer server side use.

func (ServiceOutput) Sku added in v5.5.0

Specifies which SKU to use. Possible values are `Free_F1`, `Standard_S1`, `Premium_P1` and `Premium_P2`.

func (ServiceOutput) Tags added in v5.5.0

A mapping of tags to assign to the resource.

func (ServiceOutput) TlsClientCertEnabled added in v5.5.0

func (o ServiceOutput) TlsClientCertEnabled() pulumi.BoolPtrOutput

Whether to request client certificate during TLS handshake? Defaults to `false`.

func (ServiceOutput) ToServiceOutput

func (o ServiceOutput) ToServiceOutput() ServiceOutput

func (ServiceOutput) ToServiceOutputWithContext

func (o ServiceOutput) ToServiceOutputWithContext(ctx context.Context) ServiceOutput

func (ServiceOutput) Version added in v5.5.0

func (o ServiceOutput) Version() pulumi.StringOutput

type ServiceState

type ServiceState struct {
	// Whether to enable AAD auth? Defaults to `true`.
	AadAuthEnabled pulumi.BoolPtrInput
	// Specifies the number of units associated with this Web PubSub resource. Valid values are `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `90`, `100`, `200`, `300`, `400`, `500`, `600`, `700`, `800`, `900` and `1000`.
	//
	// > **NOTE:** The valid capacity range for sku `Free_F1` is `1`, for sku `Premium_P2` is from `100` to `1000`, and from `1` to `100` for sku `Standard_S1` and `Premium_P1`.
	Capacity pulumi.IntPtrInput
	// The publicly accessible IP of the Web PubSub service.
	ExternalIp pulumi.StringPtrInput
	// The FQDN of the Web PubSub service.
	Hostname pulumi.StringPtrInput
	// An `identity` block as defined below.
	Identity ServiceIdentityPtrInput
	// A `liveTrace` block as defined below.
	LiveTrace ServiceLiveTracePtrInput
	// Whether to enable local auth? Defaults to `true`.
	LocalAuthEnabled pulumi.BoolPtrInput
	// Specifies the supported Azure location where the Web PubSub service exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The name of the Web PubSub service. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The primary access key for the Web PubSub service.
	PrimaryAccessKey pulumi.StringPtrInput
	// The primary connection string for the Web PubSub service.
	PrimaryConnectionString pulumi.StringPtrInput
	// Whether to enable public network access? Defaults to `true`.
	PublicNetworkAccessEnabled pulumi.BoolPtrInput
	// The publicly accessible port of the Web PubSub service which is designed for browser/client use.
	PublicPort pulumi.IntPtrInput
	// The name of the resource group in which to create the Web PubSub service. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// The secondary access key for the Web PubSub service.
	SecondaryAccessKey pulumi.StringPtrInput
	// The secondary connection string for the Web PubSub service.
	SecondaryConnectionString pulumi.StringPtrInput
	// The publicly accessible port of the Web PubSub service which is designed for customer server side use.
	ServerPort pulumi.IntPtrInput
	// Specifies which SKU to use. Possible values are `Free_F1`, `Standard_S1`, `Premium_P1` and `Premium_P2`.
	Sku pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Whether to request client certificate during TLS handshake? Defaults to `false`.
	TlsClientCertEnabled pulumi.BoolPtrInput
	Version              pulumi.StringPtrInput
}

func (ServiceState) ElementType

func (ServiceState) ElementType() reflect.Type

type SharedPrivateLinkResource added in v5.14.0

type SharedPrivateLinkResource struct {
	pulumi.CustomResourceState

	// Specify the name of the Web Pubsub Shared Private Link Resource. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specify the request message for requesting approval of the Shared Private Link Enabled Remote Resource.
	RequestMessage pulumi.StringPtrOutput `pulumi:"requestMessage"`
	// The status of a private endpoint connection. Possible values are Pending, Approved, Rejected or Disconnected.
	Status pulumi.StringOutput `pulumi:"status"`
	// Specify the sub resource name which the Web Pubsub Private Endpoint is able to connect to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The available sub resource can be retrieved by using `webpubsub.getPrivateLinkResource` data source.
	SubresourceName pulumi.StringOutput `pulumi:"subresourceName"`
	// Specify the ID of the Shared Private Link Enabled Remote Resource which this Web Pubsub Private Endpoint should be connected to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The sub resource name should match with the type of the target resource id that's being specified.
	TargetResourceId pulumi.StringOutput `pulumi:"targetResourceId"`
	// Specify the id of the Web Pubsub. Changing this forces a new resource to be created.
	WebPubsubId pulumi.StringOutput `pulumi:"webPubsubId"`
}

Manages the Shared Private Link Resource for a Web Pubsub service.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/webpubsub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := core.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("terraform-webpubsub"),
			Location: pulumi.String("east us"),
		})
		if err != nil {
			return err
		}
		exampleKeyVault, err := keyvault.NewKeyVault(ctx, "example", &keyvault.KeyVaultArgs{
			Name:                    pulumi.String("examplekeyvault"),
			Location:                example.Location,
			ResourceGroupName:       example.Name,
			TenantId:                pulumi.String(current.TenantId),
			SkuName:                 pulumi.String("standard"),
			SoftDeleteRetentionDays: pulumi.Int(7),
			AccessPolicies: keyvault.KeyVaultAccessPolicyArray{
				&keyvault.KeyVaultAccessPolicyArgs{
					TenantId: pulumi.String(current.TenantId),
					ObjectId: pulumi.String(current.ObjectId),
					CertificatePermissions: pulumi.StringArray{
						pulumi.String("managecontacts"),
					},
					KeyPermissions: pulumi.StringArray{
						pulumi.String("create"),
					},
					SecretPermissions: pulumi.StringArray{
						pulumi.String("set"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		exampleService, err := webpubsub.NewService(ctx, "example", &webpubsub.ServiceArgs{
			Name:              pulumi.String("tfex-webpubsub"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			Sku:               pulumi.String("Standard_S1"),
			Capacity:          pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		_, err = webpubsub.NewSharedPrivateLinkResource(ctx, "example", &webpubsub.SharedPrivateLinkResourceArgs{
			Name:             pulumi.String("tfex-webpubsub-splr"),
			WebPubsubId:      exampleService.ID(),
			SubresourceName:  pulumi.String("vault"),
			TargetResourceId: exampleKeyVault.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Web Pubsub Shared Private Link Resource can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:webpubsub/sharedPrivateLinkResource:SharedPrivateLinkResource example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.SignalRService/webPubSub/webPubSub1/sharedPrivateLinkResources/resource1 ```

func GetSharedPrivateLinkResource added in v5.14.0

func GetSharedPrivateLinkResource(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SharedPrivateLinkResourceState, opts ...pulumi.ResourceOption) (*SharedPrivateLinkResource, error)

GetSharedPrivateLinkResource gets an existing SharedPrivateLinkResource 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 NewSharedPrivateLinkResource added in v5.14.0

func NewSharedPrivateLinkResource(ctx *pulumi.Context,
	name string, args *SharedPrivateLinkResourceArgs, opts ...pulumi.ResourceOption) (*SharedPrivateLinkResource, error)

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

func (*SharedPrivateLinkResource) ElementType added in v5.14.0

func (*SharedPrivateLinkResource) ElementType() reflect.Type

func (*SharedPrivateLinkResource) ToSharedPrivateLinkResourceOutput added in v5.14.0

func (i *SharedPrivateLinkResource) ToSharedPrivateLinkResourceOutput() SharedPrivateLinkResourceOutput

func (*SharedPrivateLinkResource) ToSharedPrivateLinkResourceOutputWithContext added in v5.14.0

func (i *SharedPrivateLinkResource) ToSharedPrivateLinkResourceOutputWithContext(ctx context.Context) SharedPrivateLinkResourceOutput

type SharedPrivateLinkResourceArgs added in v5.14.0

type SharedPrivateLinkResourceArgs struct {
	// Specify the name of the Web Pubsub Shared Private Link Resource. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specify the request message for requesting approval of the Shared Private Link Enabled Remote Resource.
	RequestMessage pulumi.StringPtrInput
	// Specify the sub resource name which the Web Pubsub Private Endpoint is able to connect to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The available sub resource can be retrieved by using `webpubsub.getPrivateLinkResource` data source.
	SubresourceName pulumi.StringInput
	// Specify the ID of the Shared Private Link Enabled Remote Resource which this Web Pubsub Private Endpoint should be connected to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The sub resource name should match with the type of the target resource id that's being specified.
	TargetResourceId pulumi.StringInput
	// Specify the id of the Web Pubsub. Changing this forces a new resource to be created.
	WebPubsubId pulumi.StringInput
}

The set of arguments for constructing a SharedPrivateLinkResource resource.

func (SharedPrivateLinkResourceArgs) ElementType added in v5.14.0

type SharedPrivateLinkResourceArray added in v5.14.0

type SharedPrivateLinkResourceArray []SharedPrivateLinkResourceInput

func (SharedPrivateLinkResourceArray) ElementType added in v5.14.0

func (SharedPrivateLinkResourceArray) ToSharedPrivateLinkResourceArrayOutput added in v5.14.0

func (i SharedPrivateLinkResourceArray) ToSharedPrivateLinkResourceArrayOutput() SharedPrivateLinkResourceArrayOutput

func (SharedPrivateLinkResourceArray) ToSharedPrivateLinkResourceArrayOutputWithContext added in v5.14.0

func (i SharedPrivateLinkResourceArray) ToSharedPrivateLinkResourceArrayOutputWithContext(ctx context.Context) SharedPrivateLinkResourceArrayOutput

type SharedPrivateLinkResourceArrayInput added in v5.14.0

type SharedPrivateLinkResourceArrayInput interface {
	pulumi.Input

	ToSharedPrivateLinkResourceArrayOutput() SharedPrivateLinkResourceArrayOutput
	ToSharedPrivateLinkResourceArrayOutputWithContext(context.Context) SharedPrivateLinkResourceArrayOutput
}

SharedPrivateLinkResourceArrayInput is an input type that accepts SharedPrivateLinkResourceArray and SharedPrivateLinkResourceArrayOutput values. You can construct a concrete instance of `SharedPrivateLinkResourceArrayInput` via:

SharedPrivateLinkResourceArray{ SharedPrivateLinkResourceArgs{...} }

type SharedPrivateLinkResourceArrayOutput added in v5.14.0

type SharedPrivateLinkResourceArrayOutput struct{ *pulumi.OutputState }

func (SharedPrivateLinkResourceArrayOutput) ElementType added in v5.14.0

func (SharedPrivateLinkResourceArrayOutput) Index added in v5.14.0

func (SharedPrivateLinkResourceArrayOutput) ToSharedPrivateLinkResourceArrayOutput added in v5.14.0

func (o SharedPrivateLinkResourceArrayOutput) ToSharedPrivateLinkResourceArrayOutput() SharedPrivateLinkResourceArrayOutput

func (SharedPrivateLinkResourceArrayOutput) ToSharedPrivateLinkResourceArrayOutputWithContext added in v5.14.0

func (o SharedPrivateLinkResourceArrayOutput) ToSharedPrivateLinkResourceArrayOutputWithContext(ctx context.Context) SharedPrivateLinkResourceArrayOutput

type SharedPrivateLinkResourceInput added in v5.14.0

type SharedPrivateLinkResourceInput interface {
	pulumi.Input

	ToSharedPrivateLinkResourceOutput() SharedPrivateLinkResourceOutput
	ToSharedPrivateLinkResourceOutputWithContext(ctx context.Context) SharedPrivateLinkResourceOutput
}

type SharedPrivateLinkResourceMap added in v5.14.0

type SharedPrivateLinkResourceMap map[string]SharedPrivateLinkResourceInput

func (SharedPrivateLinkResourceMap) ElementType added in v5.14.0

func (SharedPrivateLinkResourceMap) ToSharedPrivateLinkResourceMapOutput added in v5.14.0

func (i SharedPrivateLinkResourceMap) ToSharedPrivateLinkResourceMapOutput() SharedPrivateLinkResourceMapOutput

func (SharedPrivateLinkResourceMap) ToSharedPrivateLinkResourceMapOutputWithContext added in v5.14.0

func (i SharedPrivateLinkResourceMap) ToSharedPrivateLinkResourceMapOutputWithContext(ctx context.Context) SharedPrivateLinkResourceMapOutput

type SharedPrivateLinkResourceMapInput added in v5.14.0

type SharedPrivateLinkResourceMapInput interface {
	pulumi.Input

	ToSharedPrivateLinkResourceMapOutput() SharedPrivateLinkResourceMapOutput
	ToSharedPrivateLinkResourceMapOutputWithContext(context.Context) SharedPrivateLinkResourceMapOutput
}

SharedPrivateLinkResourceMapInput is an input type that accepts SharedPrivateLinkResourceMap and SharedPrivateLinkResourceMapOutput values. You can construct a concrete instance of `SharedPrivateLinkResourceMapInput` via:

SharedPrivateLinkResourceMap{ "key": SharedPrivateLinkResourceArgs{...} }

type SharedPrivateLinkResourceMapOutput added in v5.14.0

type SharedPrivateLinkResourceMapOutput struct{ *pulumi.OutputState }

func (SharedPrivateLinkResourceMapOutput) ElementType added in v5.14.0

func (SharedPrivateLinkResourceMapOutput) MapIndex added in v5.14.0

func (SharedPrivateLinkResourceMapOutput) ToSharedPrivateLinkResourceMapOutput added in v5.14.0

func (o SharedPrivateLinkResourceMapOutput) ToSharedPrivateLinkResourceMapOutput() SharedPrivateLinkResourceMapOutput

func (SharedPrivateLinkResourceMapOutput) ToSharedPrivateLinkResourceMapOutputWithContext added in v5.14.0

func (o SharedPrivateLinkResourceMapOutput) ToSharedPrivateLinkResourceMapOutputWithContext(ctx context.Context) SharedPrivateLinkResourceMapOutput

type SharedPrivateLinkResourceOutput added in v5.14.0

type SharedPrivateLinkResourceOutput struct{ *pulumi.OutputState }

func (SharedPrivateLinkResourceOutput) ElementType added in v5.14.0

func (SharedPrivateLinkResourceOutput) Name added in v5.14.0

Specify the name of the Web Pubsub Shared Private Link Resource. Changing this forces a new resource to be created.

func (SharedPrivateLinkResourceOutput) RequestMessage added in v5.14.0

Specify the request message for requesting approval of the Shared Private Link Enabled Remote Resource.

func (SharedPrivateLinkResourceOutput) Status added in v5.14.0

The status of a private endpoint connection. Possible values are Pending, Approved, Rejected or Disconnected.

func (SharedPrivateLinkResourceOutput) SubresourceName added in v5.14.0

Specify the sub resource name which the Web Pubsub Private Endpoint is able to connect to. Changing this forces a new resource to be created.

> **NOTE:** The available sub resource can be retrieved by using `webpubsub.getPrivateLinkResource` data source.

func (SharedPrivateLinkResourceOutput) TargetResourceId added in v5.14.0

Specify the ID of the Shared Private Link Enabled Remote Resource which this Web Pubsub Private Endpoint should be connected to. Changing this forces a new resource to be created.

> **NOTE:** The sub resource name should match with the type of the target resource id that's being specified.

func (SharedPrivateLinkResourceOutput) ToSharedPrivateLinkResourceOutput added in v5.14.0

func (o SharedPrivateLinkResourceOutput) ToSharedPrivateLinkResourceOutput() SharedPrivateLinkResourceOutput

func (SharedPrivateLinkResourceOutput) ToSharedPrivateLinkResourceOutputWithContext added in v5.14.0

func (o SharedPrivateLinkResourceOutput) ToSharedPrivateLinkResourceOutputWithContext(ctx context.Context) SharedPrivateLinkResourceOutput

func (SharedPrivateLinkResourceOutput) WebPubsubId added in v5.14.0

Specify the id of the Web Pubsub. Changing this forces a new resource to be created.

type SharedPrivateLinkResourceState added in v5.14.0

type SharedPrivateLinkResourceState struct {
	// Specify the name of the Web Pubsub Shared Private Link Resource. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specify the request message for requesting approval of the Shared Private Link Enabled Remote Resource.
	RequestMessage pulumi.StringPtrInput
	// The status of a private endpoint connection. Possible values are Pending, Approved, Rejected or Disconnected.
	Status pulumi.StringPtrInput
	// Specify the sub resource name which the Web Pubsub Private Endpoint is able to connect to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The available sub resource can be retrieved by using `webpubsub.getPrivateLinkResource` data source.
	SubresourceName pulumi.StringPtrInput
	// Specify the ID of the Shared Private Link Enabled Remote Resource which this Web Pubsub Private Endpoint should be connected to. Changing this forces a new resource to be created.
	//
	// > **NOTE:** The sub resource name should match with the type of the target resource id that's being specified.
	TargetResourceId pulumi.StringPtrInput
	// Specify the id of the Web Pubsub. Changing this forces a new resource to be created.
	WebPubsubId pulumi.StringPtrInput
}

func (SharedPrivateLinkResourceState) ElementType added in v5.14.0

Jump to

Keyboard shortcuts

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