SharedPrivateLinkServiceArgs

data class SharedPrivateLinkServiceArgs(val name: Output<String>? = null, val requestMessage: Output<String>? = null, val searchServiceId: Output<String>? = null, val subresourceName: Output<String>? = null, val targetResourceId: Output<String>? = null) : ConvertibleToJava<SharedPrivateLinkServiceArgs>

Manages the Shared Private Link Service for an Azure Search Service.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const test = new azure.core.ResourceGroup("test", {
name: "example-resourceGroup",
location: "east us",
});
const testService = new azure.search.Service("test", {
name: "example-search",
resourceGroupName: test.name,
location: test.location,
sku: "standard",
});
const testAccount = new azure.storage.Account("test", {
name: "example",
resourceGroupName: test.name,
location: test.location,
accountTier: "Standard",
accountReplicationType: "LRS",
});
const testSharedPrivateLinkService = new azure.search.SharedPrivateLinkService("test", {
name: "example-spl",
searchServiceId: testService.id,
subresourceName: "blob",
targetResourceId: testAccount.id,
requestMessage: "please approve",
});
import pulumi
import pulumi_azure as azure
test = azure.core.ResourceGroup("test",
name="example-resourceGroup",
location="east us")
test_service = azure.search.Service("test",
name="example-search",
resource_group_name=test.name,
location=test.location,
sku="standard")
test_account = azure.storage.Account("test",
name="example",
resource_group_name=test.name,
location=test.location,
account_tier="Standard",
account_replication_type="LRS")
test_shared_private_link_service = azure.search.SharedPrivateLinkService("test",
name="example-spl",
search_service_id=test_service.id,
subresource_name="blob",
target_resource_id=test_account.id,
request_message="please approve")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var test = new Azure.Core.ResourceGroup("test", new()
{
Name = "example-resourceGroup",
Location = "east us",
});
var testService = new Azure.Search.Service("test", new()
{
Name = "example-search",
ResourceGroupName = test.Name,
Location = test.Location,
Sku = "standard",
});
var testAccount = new Azure.Storage.Account("test", new()
{
Name = "example",
ResourceGroupName = test.Name,
Location = test.Location,
AccountTier = "Standard",
AccountReplicationType = "LRS",
});
var testSharedPrivateLinkService = new Azure.Search.SharedPrivateLinkService("test", new()
{
Name = "example-spl",
SearchServiceId = testService.Id,
SubresourceName = "blob",
TargetResourceId = testAccount.Id,
RequestMessage = "please approve",
});
});
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/search"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/storage"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
test, err := core.NewResourceGroup(ctx, "test", &core.ResourceGroupArgs{
Name: pulumi.String("example-resourceGroup"),
Location: pulumi.String("east us"),
})
if err != nil {
return err
}
testService, err := search.NewService(ctx, "test", &search.ServiceArgs{
Name: pulumi.String("example-search"),
ResourceGroupName: test.Name,
Location: test.Location,
Sku: pulumi.String("standard"),
})
if err != nil {
return err
}
testAccount, err := storage.NewAccount(ctx, "test", &storage.AccountArgs{
Name: pulumi.String("example"),
ResourceGroupName: test.Name,
Location: test.Location,
AccountTier: pulumi.String("Standard"),
AccountReplicationType: pulumi.String("LRS"),
})
if err != nil {
return err
}
_, err = search.NewSharedPrivateLinkService(ctx, "test", &search.SharedPrivateLinkServiceArgs{
Name: pulumi.String("example-spl"),
SearchServiceId: testService.ID(),
SubresourceName: pulumi.String("blob"),
TargetResourceId: testAccount.ID(),
RequestMessage: pulumi.String("please approve"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.search.Service;
import com.pulumi.azure.search.ServiceArgs;
import com.pulumi.azure.storage.Account;
import com.pulumi.azure.storage.AccountArgs;
import com.pulumi.azure.search.SharedPrivateLinkService;
import com.pulumi.azure.search.SharedPrivateLinkServiceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var test = new ResourceGroup("test", ResourceGroupArgs.builder()
.name("example-resourceGroup")
.location("east us")
.build());
var testService = new Service("testService", ServiceArgs.builder()
.name("example-search")
.resourceGroupName(test.name())
.location(test.location())
.sku("standard")
.build());
var testAccount = new Account("testAccount", AccountArgs.builder()
.name("example")
.resourceGroupName(test.name())
.location(test.location())
.accountTier("Standard")
.accountReplicationType("LRS")
.build());
var testSharedPrivateLinkService = new SharedPrivateLinkService("testSharedPrivateLinkService", SharedPrivateLinkServiceArgs.builder()
.name("example-spl")
.searchServiceId(testService.id())
.subresourceName("blob")
.targetResourceId(testAccount.id())
.requestMessage("please approve")
.build());
}
}
resources:
test:
type: azure:core:ResourceGroup
properties:
name: example-resourceGroup
location: east us
testService:
type: azure:search:Service
name: test
properties:
name: example-search
resourceGroupName: ${test.name}
location: ${test.location}
sku: standard
testAccount:
type: azure:storage:Account
name: test
properties:
name: example
resourceGroupName: ${test.name}
location: ${test.location}
accountTier: Standard
accountReplicationType: LRS
testSharedPrivateLinkService:
type: azure:search:SharedPrivateLinkService
name: test
properties:
name: example-spl
searchServiceId: ${testService.id}
subresourceName: blob
targetResourceId: ${testAccount.id}
requestMessage: please approve

API Providers

This resource uses the following Azure API Providers:

  • Microsoft.Search: 2024-06-01-preview

Import

Azure Search Shared Private Link Resource can be imported using the resource id, e.g.

$ pulumi import azure:search/sharedPrivateLinkService:SharedPrivateLinkService example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Search/searchServices/service1/sharedPrivateLinkResources/resource1

Constructors

Link copied to clipboard
constructor(name: Output<String>? = null, requestMessage: Output<String>? = null, searchServiceId: Output<String>? = null, subresourceName: Output<String>? = null, targetResourceId: Output<String>? = null)

Properties

Link copied to clipboard
val name: Output<String>? = null

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

Link copied to clipboard
val requestMessage: Output<String>? = null

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

Link copied to clipboard
val searchServiceId: Output<String>? = null

Specify the id of the Azure Search Service. Changing this forces a new resource to be created.

Link copied to clipboard
val subresourceName: Output<String>? = null

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

Link copied to clipboard
val targetResourceId: Output<String>? = null

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

Functions

Link copied to clipboard
open override fun toJava(): SharedPrivateLinkServiceArgs