All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azurenative.documentdb.SqlResourceSqlRoleDefinition Maven / Gradle / Ivy

There is a newer version: 2.72.0
Show newest version
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.azurenative.documentdb;

import com.pulumi.azurenative.Utilities;
import com.pulumi.azurenative.documentdb.SqlResourceSqlRoleDefinitionArgs;
import com.pulumi.azurenative.documentdb.outputs.PermissionResponse;
import com.pulumi.core.Alias;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Export;
import com.pulumi.core.annotations.ResourceType;
import com.pulumi.core.internal.Codegen;
import java.lang.String;
import java.util.List;
import java.util.Optional;
import javax.annotation.Nullable;

/**
 * An Azure Cosmos DB SQL Role Definition.
 * Azure REST API version: 2023-04-15. Prior API version in Azure Native 1.x: 2021-03-01-preview.
 * 
 * Other available API versions: 2023-09-15, 2023-09-15-preview, 2023-11-15, 2023-11-15-preview, 2024-02-15-preview, 2024-05-15, 2024-05-15-preview, 2024-08-15, 2024-09-01-preview.
 * 
 * ## Example Usage
 * ### CosmosDBSqlRoleDefinitionCreateUpdate
 * 
 * 
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.documentdb.SqlResourceSqlRoleDefinition;
 * import com.pulumi.azurenative.documentdb.SqlResourceSqlRoleDefinitionArgs;
 * import com.pulumi.azurenative.documentdb.inputs.PermissionArgs;
 * 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 sqlResourceSqlRoleDefinition = new SqlResourceSqlRoleDefinition("sqlResourceSqlRoleDefinition", SqlResourceSqlRoleDefinitionArgs.builder()
 *             .accountName("myAccountName")
 *             .assignableScopes(            
 *                 "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/sales",
 *                 "/subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/dbs/purchases")
 *             .permissions(PermissionArgs.builder()
 *                 .dataActions(                
 *                     "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/create",
 *                     "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/items/read")
 *                 .notDataActions()
 *                 .build())
 *             .resourceGroupName("myResourceGroupName")
 *             .roleDefinitionId("myRoleDefinitionId")
 *             .roleName("myRoleName")
 *             .type("CustomRole")
 *             .build());
 * 
 *     }
 * }
 * 
 * }
 * 
* * ## Import * * An existing resource can be imported using its type token, name, and identifier, e.g. * * ```sh * $ pulumi import azure-native:documentdb:SqlResourceSqlRoleDefinition myRoleDefinitionId /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlRoleDefinitions/{roleDefinitionId} * ``` * */ @ResourceType(type="azure-native:documentdb:SqlResourceSqlRoleDefinition") public class SqlResourceSqlRoleDefinition extends com.pulumi.resources.CustomResource { /** * A set of fully qualified Scopes at or below which Role Assignments may be created using this Role Definition. This will allow application of this Role Definition on the entire database account or any underlying Database / Collection. Must have at least one element. Scopes higher than Database account are not enforceable as assignable Scopes. Note that resources referenced in assignable Scopes need not exist. * */ @Export(name="assignableScopes", refs={List.class,String.class}, tree="[0,1]") private Output> assignableScopes; /** * @return A set of fully qualified Scopes at or below which Role Assignments may be created using this Role Definition. This will allow application of this Role Definition on the entire database account or any underlying Database / Collection. Must have at least one element. Scopes higher than Database account are not enforceable as assignable Scopes. Note that resources referenced in assignable Scopes need not exist. * */ public Output>> assignableScopes() { return Codegen.optional(this.assignableScopes); } /** * The name of the database account. * */ @Export(name="name", refs={String.class}, tree="[0]") private Output name; /** * @return The name of the database account. * */ public Output name() { return this.name; } /** * The set of operations allowed through this Role Definition. * */ @Export(name="permissions", refs={List.class,PermissionResponse.class}, tree="[0,1]") private Output> permissions; /** * @return The set of operations allowed through this Role Definition. * */ public Output>> permissions() { return Codegen.optional(this.permissions); } /** * A user-friendly name for the Role Definition. Must be unique for the database account. * */ @Export(name="roleName", refs={String.class}, tree="[0]") private Output roleName; /** * @return A user-friendly name for the Role Definition. Must be unique for the database account. * */ public Output> roleName() { return Codegen.optional(this.roleName); } /** * The type of Azure resource. * */ @Export(name="type", refs={String.class}, tree="[0]") private Output type; /** * @return The type of Azure resource. * */ public Output type() { return this.type; } /** * * @param name The _unique_ name of the resulting resource. */ public SqlResourceSqlRoleDefinition(java.lang.String name) { this(name, SqlResourceSqlRoleDefinitionArgs.Empty); } /** * * @param name The _unique_ name of the resulting resource. * @param args The arguments to use to populate this resource's properties. */ public SqlResourceSqlRoleDefinition(java.lang.String name, SqlResourceSqlRoleDefinitionArgs args) { this(name, args, null); } /** * * @param name The _unique_ name of the resulting resource. * @param args The arguments to use to populate this resource's properties. * @param options A bag of options that control this resource's behavior. */ public SqlResourceSqlRoleDefinition(java.lang.String name, SqlResourceSqlRoleDefinitionArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { super("azure-native:documentdb:SqlResourceSqlRoleDefinition", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); } private SqlResourceSqlRoleDefinition(java.lang.String name, Output id, @Nullable com.pulumi.resources.CustomResourceOptions options) { super("azure-native:documentdb:SqlResourceSqlRoleDefinition", name, null, makeResourceOptions(options, id), false); } private static SqlResourceSqlRoleDefinitionArgs makeArgs(SqlResourceSqlRoleDefinitionArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { if (options != null && options.getUrn().isPresent()) { return null; } return args == null ? SqlResourceSqlRoleDefinitionArgs.Empty : args; } private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() .version(Utilities.getVersion()) .aliases(List.of( Output.of(Alias.builder().type("azure-native:documentdb/v20200601preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20210301preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20210401preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20210415:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20210515:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20210615:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20210701preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20211015:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20211015preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20211115preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20220215preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20220515:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20220515preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20220815:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20220815preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20221115:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20221115preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20230301preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20230315:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20230315preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20230415:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20230915:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20230915preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20231115:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20231115preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20240215preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20240515:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20240515preview:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20240815:SqlResourceSqlRoleDefinition").build()), Output.of(Alias.builder().type("azure-native:documentdb/v20240901preview:SqlResourceSqlRoleDefinition").build()) )) .build(); return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); } /** * Get an existing Host resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param options Optional settings to control the behavior of the CustomResource. */ public static SqlResourceSqlRoleDefinition get(java.lang.String name, Output id, @Nullable com.pulumi.resources.CustomResourceOptions options) { return new SqlResourceSqlRoleDefinition(name, id, options); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy