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

com.pulumi.aws.appfabric.AppAuthorization Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.

There is a newer version: 6.60.0-alpha.1731982519
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.aws.appfabric;

import com.pulumi.aws.Utilities;
import com.pulumi.aws.appfabric.AppAuthorizationArgs;
import com.pulumi.aws.appfabric.inputs.AppAuthorizationState;
import com.pulumi.aws.appfabric.outputs.AppAuthorizationCredential;
import com.pulumi.aws.appfabric.outputs.AppAuthorizationTenant;
import com.pulumi.aws.appfabric.outputs.AppAuthorizationTimeouts;
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.Map;
import java.util.Optional;
import javax.annotation.Nullable;

/**
 * Resource for managing an AWS AppFabric App Authorization.
 * 
 * ## Example Usage
 * 
 * ### Basic Usage
 * 
 * <!--Start PulumiCodeChooser -->
 * 
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.aws.appfabric.AppAuthorization;
 * import com.pulumi.aws.appfabric.AppAuthorizationArgs;
 * import com.pulumi.aws.appfabric.inputs.AppAuthorizationCredentialArgs;
 * import com.pulumi.aws.appfabric.inputs.AppAuthorizationTenantArgs;
 * 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 example = new AppAuthorization("example", AppAuthorizationArgs.builder()
 *             .app("TERRAFORMCLOUD")
 *             .appBundleArn(arn)
 *             .authType("apiKey")
 *             .credential(AppAuthorizationCredentialArgs.builder()
 *                 .apiKeyCredentials(AppAuthorizationCredentialApiKeyCredentialArgs.builder()
 *                     .apiKey("exampleapikeytoken")
 *                     .build())
 *                 .build())
 *             .tenants(AppAuthorizationTenantArgs.builder()
 *                 .tenantDisplayName("example")
 *                 .tenantIdentifier("example")
 *                 .build())
 *             .build());
 * 
 *     }
 * }
 * }
 * 
* <!--End PulumiCodeChooser --> * */ @ResourceType(type="aws:appfabric/appAuthorization:AppAuthorization") public class AppAuthorization extends com.pulumi.resources.CustomResource { /** * The name of the application for valid values see https://docs.aws.amazon.com/appfabric/latest/api/API_CreateAppAuthorization.html. * */ @Export(name="app", refs={String.class}, tree="[0]") private Output app; /** * @return The name of the application for valid values see https://docs.aws.amazon.com/appfabric/latest/api/API_CreateAppAuthorization.html. * */ public Output app() { return this.app; } /** * The Amazon Resource Name (ARN) of the app bundle to use for the request. * */ @Export(name="appBundleArn", refs={String.class}, tree="[0]") private Output appBundleArn; /** * @return The Amazon Resource Name (ARN) of the app bundle to use for the request. * */ public Output appBundleArn() { return this.appBundleArn; } /** * ARN of the App Authorization. Do not begin the description with "An", "The", "Defines", "Indicates", or "Specifies," as these are verbose. In other words, "Indicates the amount of storage," can be rewritten as "Amount of storage," without losing any information. * */ @Export(name="arn", refs={String.class}, tree="[0]") private Output arn; /** * @return ARN of the App Authorization. Do not begin the description with "An", "The", "Defines", "Indicates", or "Specifies," as these are verbose. In other words, "Indicates the amount of storage," can be rewritten as "Amount of storage," without losing any information. * */ public Output arn() { return this.arn; } /** * The authorization type for the app authorization valid values are oauth2 and apiKey. * */ @Export(name="authType", refs={String.class}, tree="[0]") private Output authType; /** * @return The authorization type for the app authorization valid values are oauth2 and apiKey. * */ public Output authType() { return this.authType; } /** * The application URL for the OAuth flow. * */ @Export(name="authUrl", refs={String.class}, tree="[0]") private Output authUrl; /** * @return The application URL for the OAuth flow. * */ public Output authUrl() { return this.authUrl; } @Export(name="createdAt", refs={String.class}, tree="[0]") private Output createdAt; public Output createdAt() { return this.createdAt; } /** * Contains credentials for the application, such as an API key or OAuth2 client ID and secret. * Specify credentials that match the authorization type for your request. For example, if the authorization type for your request is OAuth2 (oauth2), then you should provide only the OAuth2 credentials. * */ @Export(name="credential", refs={AppAuthorizationCredential.class}, tree="[0]") private Output credential; /** * @return Contains credentials for the application, such as an API key or OAuth2 client ID and secret. * Specify credentials that match the authorization type for your request. For example, if the authorization type for your request is OAuth2 (oauth2), then you should provide only the OAuth2 credentials. * */ public Output> credential() { return Codegen.optional(this.credential); } /** * The user persona of the app authorization. * */ @Export(name="persona", refs={String.class}, tree="[0]") private Output persona; /** * @return The user persona of the app authorization. * */ public Output persona() { return this.persona; } @Export(name="tags", refs={Map.class,String.class}, tree="[0,1,1]") private Output> tags; public Output>> tags() { return Codegen.optional(this.tags); } /** * @deprecated * Please use `tags` instead. * */ @Deprecated /* Please use `tags` instead. */ @Export(name="tagsAll", refs={Map.class,String.class}, tree="[0,1,1]") private Output> tagsAll; public Output> tagsAll() { return this.tagsAll; } /** * Contains information about an application tenant, such as the application display name and identifier. * */ @Export(name="tenants", refs={List.class,AppAuthorizationTenant.class}, tree="[0,1]") private Output> tenants; /** * @return Contains information about an application tenant, such as the application display name and identifier. * */ public Output>> tenants() { return Codegen.optional(this.tenants); } @Export(name="timeouts", refs={AppAuthorizationTimeouts.class}, tree="[0]") private Output timeouts; public Output> timeouts() { return Codegen.optional(this.timeouts); } @Export(name="updatedAt", refs={String.class}, tree="[0]") private Output updatedAt; public Output updatedAt() { return this.updatedAt; } /** * * @param name The _unique_ name of the resulting resource. */ public AppAuthorization(java.lang.String name) { this(name, AppAuthorizationArgs.Empty); } /** * * @param name The _unique_ name of the resulting resource. * @param args The arguments to use to populate this resource's properties. */ public AppAuthorization(java.lang.String name, AppAuthorizationArgs 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 AppAuthorization(java.lang.String name, AppAuthorizationArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { super("aws:appfabric/appAuthorization:AppAuthorization", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); } private AppAuthorization(java.lang.String name, Output id, @Nullable AppAuthorizationState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { super("aws:appfabric/appAuthorization:AppAuthorization", name, state, makeResourceOptions(options, id), false); } private static AppAuthorizationArgs makeArgs(AppAuthorizationArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { if (options != null && options.getUrn().isPresent()) { return null; } return args == null ? AppAuthorizationArgs.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()) .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 state * @param options Optional settings to control the behavior of the CustomResource. */ public static AppAuthorization get(java.lang.String name, Output id, @Nullable AppAuthorizationState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { return new AppAuthorization(name, id, state, options); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy