Bmc Key Set
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 baseboard management controller key set of cluster
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var bmcKeySet = new AzureNative.NetworkCloud.BmcKeySet("bmcKeySet", new()
{
AzureGroupId = "f110271b-XXXX-4163-9b99-214d91660f0e",
BmcKeySetName = "bmcKeySetName",
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",
},
Location = "location",
PrivilegeLevel = AzureNative.NetworkCloud.BmcKeySetPrivilegeLevel.Administrator,
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.NewBmcKeySet(ctx, "bmcKeySet", &networkcloud.BmcKeySetArgs{
AzureGroupId: pulumi.String("f110271b-XXXX-4163-9b99-214d91660f0e"),
BmcKeySetName: pulumi.String("bmcKeySetName"),
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"),
},
Location: pulumi.String("location"),
PrivilegeLevel: pulumi.String(networkcloud.BmcKeySetPrivilegeLevelAdministrator),
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.BmcKeySet;
import com.pulumi.azurenative.networkcloud.BmcKeySetArgs;
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 bmcKeySet = new BmcKeySet("bmcKeySet", BmcKeySetArgs.builder()
.azureGroupId("f110271b-XXXX-4163-9b99-214d91660f0e")
.bmcKeySetName("bmcKeySetName")
.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())
.location("location")
.privilegeLevel("Administrator")
.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:BmcKeySet bmcKeySetName /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/clusters/{clusterName}/bmcKeySets/{bmcKeySetName}
Properties
The Azure API version of the resource.
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.
The more detailed status of the key set.
The descriptive message about the current detailed status.
The date and time after which the users in this key set will be removed from the baseboard management controllers.
The extended location of the cluster associated with the resource.
The last time this key set was validated.
The access level allowed for the users in this key set.
The provisioning state of the baseboard management controller key set.
Azure Resource Manager metadata containing createdBy and modifiedBy information.
The unique list of permitted users.
The status evaluation of each user.