Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azure.mysql.kotlin
import com.pulumi.azure.mysql.ActiveDirectoryAdministratorArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
* Allows you to set a user or group as the AD administrator for an MySQL server in Azure
* > **Note:** Azure Database for MySQL Single Server and its sub resources are scheduled for retirement by 2024-09-16 and will migrate to using Azure Database for MySQL Flexible Server: https://go.microsoft.com/fwlink/?linkid=2216041. The `azure.mysql.ActiveDirectoryAdministrator` resource is deprecated and will be removed in v4.0 of the AzureRM Provider. Please use the `azure.mysql.FlexibleServerActiveDirectoryAdministratory` resource instead.
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as azure from "@pulumi/azure";
* const current = azure.core.getClientConfig({});
* const example = new azure.core.ResourceGroup("example", {
* name: "example-resources",
* location: "West Europe",
* });
* const exampleServer = new azure.mysql.Server("example", {
* name: "example-mysqlserver",
* location: example.location,
* resourceGroupName: example.name,
* administratorLogin: "mysqladminun",
* administratorLoginPassword: "H@Sh1CoR3!",
* sslEnforcementEnabled: true,
* skuName: "B_Gen5_2",
* storageMb: 5120,
* version: "5.7",
* });
* const exampleActiveDirectoryAdministrator = new azure.mysql.ActiveDirectoryAdministrator("example", {
* serverName: exampleServer.name,
* resourceGroupName: example.name,
* login: "sqladmin",
* tenantId: current.then(current => current.tenantId),
* objectId: current.then(current => current.objectId),
* });
* ```
* ```python
* import pulumi
* import pulumi_azure as azure
* current = azure.core.get_client_config()
* example = azure.core.ResourceGroup("example",
* name="example-resources",
* location="West Europe")
* example_server = azure.mysql.Server("example",
* name="example-mysqlserver",
* location=example.location,
* resource_group_name=example.name,
* administrator_login="mysqladminun",
* administrator_login_password="H@Sh1CoR3!",
* ssl_enforcement_enabled=True,
* sku_name="B_Gen5_2",
* storage_mb=5120,
* version="5.7")
* example_active_directory_administrator = azure.mysql.ActiveDirectoryAdministrator("example",
* server_name=example_server.name,
* resource_group_name=example.name,
* login="sqladmin",
* tenant_id=current.tenant_id,
* object_id=current.object_id)
* ```
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using Azure = Pulumi.Azure;
* return await Deployment.RunAsync(() =>
* {
* var current = Azure.Core.GetClientConfig.Invoke();
* var example = new Azure.Core.ResourceGroup("example", new()
* {
* Name = "example-resources",
* Location = "West Europe",
* });
* var exampleServer = new Azure.MySql.Server("example", new()
* {
* Name = "example-mysqlserver",
* Location = example.Location,
* ResourceGroupName = example.Name,
* AdministratorLogin = "mysqladminun",
* AdministratorLoginPassword = "H@Sh1CoR3!",
* SslEnforcementEnabled = true,
* SkuName = "B_Gen5_2",
* StorageMb = 5120,
* Version = "5.7",
* });
* var exampleActiveDirectoryAdministrator = new Azure.MySql.ActiveDirectoryAdministrator("example", new()
* {
* ServerName = exampleServer.Name,
* ResourceGroupName = example.Name,
* Login = "sqladmin",
* TenantId = current.Apply(getClientConfigResult => getClientConfigResult.TenantId),
* ObjectId = current.Apply(getClientConfigResult => getClientConfigResult.ObjectId),
* });
* });
* ```
* ```go
* package main
* import (
* "github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
* "github.com/pulumi/pulumi-azure/sdk/v5/go/azure/mysql"
* "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
* }
* exampleServer, err := mysql.NewServer(ctx, "example", &mysql.ServerArgs{
* Name: pulumi.String("example-mysqlserver"),
* Location: example.Location,
* ResourceGroupName: example.Name,
* AdministratorLogin: pulumi.String("mysqladminun"),
* AdministratorLoginPassword: pulumi.String("H@Sh1CoR3!"),
* SslEnforcementEnabled: pulumi.Bool(true),
* SkuName: pulumi.String("B_Gen5_2"),
* StorageMb: pulumi.Int(5120),
* Version: pulumi.String("5.7"),
* })
* if err != nil {
* return err
* }
* _, err = mysql.NewActiveDirectoryAdministrator(ctx, "example", &mysql.ActiveDirectoryAdministratorArgs{
* ServerName: exampleServer.Name,
* ResourceGroupName: example.Name,
* Login: pulumi.String("sqladmin"),
* TenantId: pulumi.String(current.TenantId),
* ObjectId: pulumi.String(current.ObjectId),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azure.core.CoreFunctions;
* import com.pulumi.azure.core.ResourceGroup;
* import com.pulumi.azure.core.ResourceGroupArgs;
* import com.pulumi.azure.mysql.Server;
* import com.pulumi.azure.mysql.ServerArgs;
* import com.pulumi.azure.mysql.ActiveDirectoryAdministrator;
* import com.pulumi.azure.mysql.ActiveDirectoryAdministratorArgs;
* 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) {
* final var current = CoreFunctions.getClientConfig();
* var example = new ResourceGroup("example", ResourceGroupArgs.builder()
* .name("example-resources")
* .location("West Europe")
* .build());
* var exampleServer = new Server("exampleServer", ServerArgs.builder()
* .name("example-mysqlserver")
* .location(example.location())
* .resourceGroupName(example.name())
* .administratorLogin("mysqladminun")
* .administratorLoginPassword("H@Sh1CoR3!")
* .sslEnforcementEnabled(true)
* .skuName("B_Gen5_2")
* .storageMb(5120)
* .version("5.7")
* .build());
* var exampleActiveDirectoryAdministrator = new ActiveDirectoryAdministrator("exampleActiveDirectoryAdministrator", ActiveDirectoryAdministratorArgs.builder()
* .serverName(exampleServer.name())
* .resourceGroupName(example.name())
* .login("sqladmin")
* .tenantId(current.applyValue(getClientConfigResult -> getClientConfigResult.tenantId()))
* .objectId(current.applyValue(getClientConfigResult -> getClientConfigResult.objectId()))
* .build());
* }
* }
* ```
* ```yaml
* resources:
* example:
* type: azure:core:ResourceGroup
* properties:
* name: example-resources
* location: West Europe
* exampleServer:
* type: azure:mysql:Server
* name: example
* properties:
* name: example-mysqlserver
* location: ${example.location}
* resourceGroupName: ${example.name}
* administratorLogin: mysqladminun
* administratorLoginPassword: H@Sh1CoR3!
* sslEnforcementEnabled: true
* skuName: B_Gen5_2
* storageMb: 5120
* version: '5.7'
* exampleActiveDirectoryAdministrator:
* type: azure:mysql:ActiveDirectoryAdministrator
* name: example
* properties:
* serverName: ${exampleServer.name}
* resourceGroupName: ${example.name}
* login: sqladmin
* tenantId: ${current.tenantId}
* objectId: ${current.objectId}
* variables:
* current:
* fn::invoke:
* Function: azure:core:getClientConfig
* Arguments: {}
* ```
*
* ## Import
* A MySQL Active Directory Administrator can be imported using the `resource id`, e.g.
* ```sh
* $ pulumi import azure:mysql/activeDirectoryAdministrator:ActiveDirectoryAdministrator administrator /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.DBforMySQL/servers/myserver/administrators/activeDirectory
* ```
* @property login The login name of the principal to set as the server administrator
* @property objectId The ID of the principal to set as the server administrator. For a managed identity this should be the Client ID of the identity.
* @property resourceGroupName The name of the resource group for the MySQL server. Changing this forces a new resource to be created.
* @property serverName The name of the MySQL Server on which to set the administrator. Changing this forces a new resource to be created.
* @property tenantId The Azure Tenant ID
*/
public data class ActiveDirectoryAdministratorArgs(
public val login: Output? = null,
public val objectId: Output? = null,
public val resourceGroupName: Output? = null,
public val serverName: Output? = null,
public val tenantId: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azure.mysql.ActiveDirectoryAdministratorArgs =
com.pulumi.azure.mysql.ActiveDirectoryAdministratorArgs.builder()
.login(login?.applyValue({ args0 -> args0 }))
.objectId(objectId?.applyValue({ args0 -> args0 }))
.resourceGroupName(resourceGroupName?.applyValue({ args0 -> args0 }))
.serverName(serverName?.applyValue({ args0 -> args0 }))
.tenantId(tenantId?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ActiveDirectoryAdministratorArgs].
*/
@PulumiTagMarker
public class ActiveDirectoryAdministratorArgsBuilder internal constructor() {
private var login: Output? = null
private var objectId: Output? = null
private var resourceGroupName: Output? = null
private var serverName: Output? = null
private var tenantId: Output? = null
/**
* @param value The login name of the principal to set as the server administrator
*/
@JvmName("gcqdapsquqraaeqc")
public suspend fun login(`value`: Output) {
this.login = value
}
/**
* @param value The ID of the principal to set as the server administrator. For a managed identity this should be the Client ID of the identity.
*/
@JvmName("wfbamjkhdfejtadp")
public suspend fun objectId(`value`: Output) {
this.objectId = value
}
/**
* @param value The name of the resource group for the MySQL server. Changing this forces a new resource to be created.
*/
@JvmName("bypquvadwauvivdw")
public suspend fun resourceGroupName(`value`: Output) {
this.resourceGroupName = value
}
/**
* @param value The name of the MySQL Server on which to set the administrator. Changing this forces a new resource to be created.
*/
@JvmName("gikukopasgcldswt")
public suspend fun serverName(`value`: Output) {
this.serverName = value
}
/**
* @param value The Azure Tenant ID
*/
@JvmName("ymknxsjadfomlktt")
public suspend fun tenantId(`value`: Output) {
this.tenantId = value
}
/**
* @param value The login name of the principal to set as the server administrator
*/
@JvmName("kjrywicgsqmlmlmd")
public suspend fun login(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.login = mapped
}
/**
* @param value The ID of the principal to set as the server administrator. For a managed identity this should be the Client ID of the identity.
*/
@JvmName("psbnuhekccbvjyvy")
public suspend fun objectId(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.objectId = mapped
}
/**
* @param value The name of the resource group for the MySQL server. Changing this forces a new resource to be created.
*/
@JvmName("tvevxtdpyvwhojbb")
public suspend fun resourceGroupName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.resourceGroupName = mapped
}
/**
* @param value The name of the MySQL Server on which to set the administrator. Changing this forces a new resource to be created.
*/
@JvmName("iarxaxdujpjfhvwh")
public suspend fun serverName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.serverName = mapped
}
/**
* @param value The Azure Tenant ID
*/
@JvmName("judmauyjwhcnincg")
public suspend fun tenantId(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.tenantId = mapped
}
internal fun build(): ActiveDirectoryAdministratorArgs = ActiveDirectoryAdministratorArgs(
login = login,
objectId = objectId,
resourceGroupName = resourceGroupName,
serverName = serverName,
tenantId = tenantId,
)
}