BareMetalMachineKeySet

class BareMetalMachineKeySet : KotlinCustomResource

Uses Azure REST API version 2025-02-01. In version 2.x of the Azure Native provider, it used API version 2023-10-01-preview. Other available API versions: 2023-10-01-preview, 2024-06-01-preview, 2024-07-01, 2024-10-01-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native networkcloud [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

Create or update bare metal machine key set of cluster

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var bareMetalMachineKeySet = new AzureNative.NetworkCloud.BareMetalMachineKeySet("bareMetalMachineKeySet", new()
{
AzureGroupId = "f110271b-XXXX-4163-9b99-214d91660f0e",
BareMetalMachineKeySetName = "bareMetalMachineKeySetName",
ClusterName = "clusterName",
Expiration = "2022-12-31T23:59:59.008Z",
ExtendedLocation = new AzureNative.NetworkCloud.Inputs.ExtendedLocationArgs
{
Name = "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName",
Type = "CustomLocation",
},
JumpHostsAllowed = new[]
{
"192.0.2.1",
"192.0.2.5",
},
Location = "location",
OsGroupName = "standardAccessGroup",
PrivilegeLevel = AzureNative.NetworkCloud.BareMetalMachineKeySetPrivilegeLevel.Standard,
ResourceGroupName = "resourceGroupName",
Tags =
{
{ "key1", "myvalue1" },
{ "key2", "myvalue2" },
},
UserList = new[]
{
new AzureNative.NetworkCloud.Inputs.KeySetUserArgs
{
AzureUserName = "userABC",
Description = "Needs access for troubleshooting as a part of the support team",
SshPublicKey = new AzureNative.NetworkCloud.Inputs.SshPublicKeyArgs
{
KeyData = "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm",
},
UserPrincipalName = "userABC@contoso.com",
},
new AzureNative.NetworkCloud.Inputs.KeySetUserArgs
{
AzureUserName = "userXYZ",
Description = "Needs access for troubleshooting as a part of the support team",
SshPublicKey = new AzureNative.NetworkCloud.Inputs.SshPublicKeyArgs
{
KeyData = "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm",
},
UserPrincipalName = "userABC@contoso.com",
},
},
});
});
package main
import (
networkcloud "github.com/pulumi/pulumi-azure-native-sdk/networkcloud/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := networkcloud.NewBareMetalMachineKeySet(ctx, "bareMetalMachineKeySet", &networkcloud.BareMetalMachineKeySetArgs{
AzureGroupId: pulumi.String("f110271b-XXXX-4163-9b99-214d91660f0e"),
BareMetalMachineKeySetName: pulumi.String("bareMetalMachineKeySetName"),
ClusterName: pulumi.String("clusterName"),
Expiration: pulumi.String("2022-12-31T23:59:59.008Z"),
ExtendedLocation: &networkcloud.ExtendedLocationArgs{
Name: pulumi.String("/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"),
Type: pulumi.String("CustomLocation"),
},
JumpHostsAllowed: pulumi.StringArray{
pulumi.String("192.0.2.1"),
pulumi.String("192.0.2.5"),
},
Location: pulumi.String("location"),
OsGroupName: pulumi.String("standardAccessGroup"),
PrivilegeLevel: pulumi.String(networkcloud.BareMetalMachineKeySetPrivilegeLevelStandard),
ResourceGroupName: pulumi.String("resourceGroupName"),
Tags: pulumi.StringMap{
"key1": pulumi.String("myvalue1"),
"key2": pulumi.String("myvalue2"),
},
UserList: networkcloud.KeySetUserArray{
&networkcloud.KeySetUserArgs{
AzureUserName: pulumi.String("userABC"),
Description: pulumi.String("Needs access for troubleshooting as a part of the support team"),
SshPublicKey: &networkcloud.SshPublicKeyArgs{
KeyData: pulumi.String("ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"),
},
UserPrincipalName: pulumi.String("userABC@contoso.com"),
},
&networkcloud.KeySetUserArgs{
AzureUserName: pulumi.String("userXYZ"),
Description: pulumi.String("Needs access for troubleshooting as a part of the support team"),
SshPublicKey: &networkcloud.SshPublicKeyArgs{
KeyData: pulumi.String("ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"),
},
UserPrincipalName: pulumi.String("userABC@contoso.com"),
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.networkcloud.BareMetalMachineKeySet;
import com.pulumi.azurenative.networkcloud.BareMetalMachineKeySetArgs;
import com.pulumi.azurenative.networkcloud.inputs.ExtendedLocationArgs;
import com.pulumi.azurenative.networkcloud.inputs.KeySetUserArgs;
import com.pulumi.azurenative.networkcloud.inputs.SshPublicKeyArgs;
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 bareMetalMachineKeySet = new BareMetalMachineKeySet("bareMetalMachineKeySet", BareMetalMachineKeySetArgs.builder()
.azureGroupId("f110271b-XXXX-4163-9b99-214d91660f0e")
.bareMetalMachineKeySetName("bareMetalMachineKeySetName")
.clusterName("clusterName")
.expiration("2022-12-31T23:59:59.008Z")
.extendedLocation(ExtendedLocationArgs.builder()
.name("/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName")
.type("CustomLocation")
.build())
.jumpHostsAllowed(
"192.0.2.1",
"192.0.2.5")
.location("location")
.osGroupName("standardAccessGroup")
.privilegeLevel("Standard")
.resourceGroupName("resourceGroupName")
.tags(Map.ofEntries(
Map.entry("key1", "myvalue1"),
Map.entry("key2", "myvalue2")
))
.userList(
KeySetUserArgs.builder()
.azureUserName("userABC")
.description("Needs access for troubleshooting as a part of the support team")
.sshPublicKey(SshPublicKeyArgs.builder()
.keyData("ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm")
.build())
.userPrincipalName("userABC@contoso.com")
.build(),
KeySetUserArgs.builder()
.azureUserName("userXYZ")
.description("Needs access for troubleshooting as a part of the support team")
.sshPublicKey(SshPublicKeyArgs.builder()
.keyData("ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm")
.build())
.userPrincipalName("userABC@contoso.com")
.build())
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:networkcloud:BareMetalMachineKeySet bareMetalMachineKeySetName /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/clusters/{clusterName}/bareMetalMachineKeySets/{bareMetalMachineKeySetName}

Properties

Link copied to clipboard
val azureApiVersion: Output<String>

The Azure API version of the resource.

Link copied to clipboard
val azureGroupId: Output<String>

The object ID of Azure Active Directory group that all users in the list must be in for access to be granted. Users that are not in the group will not have access.

Link copied to clipboard
val detailedStatus: Output<String>

The more detailed status of the key set.

Link copied to clipboard

The descriptive message about the current detailed status.

Link copied to clipboard
val etag: Output<String>

Resource ETag.

Link copied to clipboard
val expiration: Output<String>

The date and time after which the users in this key set will be removed from the bare metal machines.

Link copied to clipboard

The extended location of the cluster associated with the resource.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard

The list of IP addresses of jump hosts with management network access from which a login will be allowed for the users.

Link copied to clipboard
val lastValidation: Output<String>

The last time this key set was validated.

Link copied to clipboard
val location: Output<String>

The geo-location where the resource lives

Link copied to clipboard
val name: Output<String>

The name of the resource

Link copied to clipboard
val osGroupName: Output<String>?

The name of the group that users will be assigned to on the operating system of the machines.

Link copied to clipboard
val privilegeLevel: Output<String>

The access level allowed for the users in this key set.

Link copied to clipboard

The provisioning state of the bare metal machine key set.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Azure Resource Manager metadata containing createdBy and modifiedBy information.

Link copied to clipboard
val tags: Output<Map<String, String>>?

Resource tags.

Link copied to clipboard
val type: Output<String>

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

Link copied to clipboard
val urn: Output<String>
Link copied to clipboard

The unique list of permitted users.

Link copied to clipboard

The status evaluation of each user.