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

com.pulumi.azure.keyvault.inputs.CertificateState Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.

There is a newer version: 6.10.0-alpha.1731737215
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.azure.keyvault.inputs;

import com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;
import com.pulumi.azure.keyvault.inputs.CertificateCertificateAttributeArgs;
import com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class CertificateState extends com.pulumi.resources.ResourceArgs {

    public static final CertificateState Empty = new CertificateState();

    /**
     * A `certificate` block as defined below, used to Import an existing certificate. Changing this will create a new version of the Key Vault Certificate.
     * 
     */
    @Import(name="certificate")
    private @Nullable Output certificate;

    /**
     * @return A `certificate` block as defined below, used to Import an existing certificate. Changing this will create a new version of the Key Vault Certificate.
     * 
     */
    public Optional> certificate() {
        return Optional.ofNullable(this.certificate);
    }

    /**
     * A `certificate_attribute` block as defined below.
     * 
     */
    @Import(name="certificateAttributes")
    private @Nullable Output> certificateAttributes;

    /**
     * @return A `certificate_attribute` block as defined below.
     * 
     */
    public Optional>> certificateAttributes() {
        return Optional.ofNullable(this.certificateAttributes);
    }

    /**
     * The raw Key Vault Certificate data represented as a hexadecimal string.
     * 
     */
    @Import(name="certificateData")
    private @Nullable Output certificateData;

    /**
     * @return The raw Key Vault Certificate data represented as a hexadecimal string.
     * 
     */
    public Optional> certificateData() {
        return Optional.ofNullable(this.certificateData);
    }

    /**
     * The Base64 encoded Key Vault Certificate data.
     * 
     */
    @Import(name="certificateDataBase64")
    private @Nullable Output certificateDataBase64;

    /**
     * @return The Base64 encoded Key Vault Certificate data.
     * 
     */
    public Optional> certificateDataBase64() {
        return Optional.ofNullable(this.certificateDataBase64);
    }

    /**
     * A `certificate_policy` block as defined below. Changing this (except the `lifetime_action` field) will create a new version of the Key Vault Certificate.
     * 
     * > **NOTE:** When creating a Key Vault Certificate, at least one of `certificate` or `certificate_policy` is required. Provide `certificate` to import an existing certificate, `certificate_policy` to generate a new certificate.
     * 
     */
    @Import(name="certificatePolicy")
    private @Nullable Output certificatePolicy;

    /**
     * @return A `certificate_policy` block as defined below. Changing this (except the `lifetime_action` field) will create a new version of the Key Vault Certificate.
     * 
     * > **NOTE:** When creating a Key Vault Certificate, at least one of `certificate` or `certificate_policy` is required. Provide `certificate` to import an existing certificate, `certificate_policy` to generate a new certificate.
     * 
     */
    public Optional> certificatePolicy() {
        return Optional.ofNullable(this.certificatePolicy);
    }

    /**
     * The ID of the Key Vault where the Certificate should be created. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="keyVaultId")
    private @Nullable Output keyVaultId;

    /**
     * @return The ID of the Key Vault where the Certificate should be created. Changing this forces a new resource to be created.
     * 
     */
    public Optional> keyVaultId() {
        return Optional.ofNullable(this.keyVaultId);
    }

    /**
     * Specifies the name of the Key Vault Certificate. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return Specifies the name of the Key Vault Certificate. Changing this forces a new resource to be created.
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * The (Versioned) ID for this Key Vault Certificate. This property points to a specific version of a Key Vault Certificate, as such using this won't auto-rotate values if used in other Azure Services.
     * 
     */
    @Import(name="resourceManagerId")
    private @Nullable Output resourceManagerId;

    /**
     * @return The (Versioned) ID for this Key Vault Certificate. This property points to a specific version of a Key Vault Certificate, as such using this won't auto-rotate values if used in other Azure Services.
     * 
     */
    public Optional> resourceManagerId() {
        return Optional.ofNullable(this.resourceManagerId);
    }

    /**
     * The Versionless ID of the Key Vault Certificate. This property allows other Azure Services (that support it) to auto-rotate their value when the Key Vault Certificate is updated.
     * 
     */
    @Import(name="resourceManagerVersionlessId")
    private @Nullable Output resourceManagerVersionlessId;

    /**
     * @return The Versionless ID of the Key Vault Certificate. This property allows other Azure Services (that support it) to auto-rotate their value when the Key Vault Certificate is updated.
     * 
     */
    public Optional> resourceManagerVersionlessId() {
        return Optional.ofNullable(this.resourceManagerVersionlessId);
    }

    /**
     * The ID of the associated Key Vault Secret.
     * 
     */
    @Import(name="secretId")
    private @Nullable Output secretId;

    /**
     * @return The ID of the associated Key Vault Secret.
     * 
     */
    public Optional> secretId() {
        return Optional.ofNullable(this.secretId);
    }

    /**
     * A mapping of tags to assign to the resource.
     * 
     */
    @Import(name="tags")
    private @Nullable Output> tags;

    /**
     * @return A mapping of tags to assign to the resource.
     * 
     */
    public Optional>> tags() {
        return Optional.ofNullable(this.tags);
    }

    /**
     * The X509 Thumbprint of the Key Vault Certificate represented as a hexadecimal string.
     * 
     */
    @Import(name="thumbprint")
    private @Nullable Output thumbprint;

    /**
     * @return The X509 Thumbprint of the Key Vault Certificate represented as a hexadecimal string.
     * 
     */
    public Optional> thumbprint() {
        return Optional.ofNullable(this.thumbprint);
    }

    /**
     * The current version of the Key Vault Certificate.
     * 
     */
    @Import(name="version")
    private @Nullable Output version;

    /**
     * @return The current version of the Key Vault Certificate.
     * 
     */
    public Optional> version() {
        return Optional.ofNullable(this.version);
    }

    /**
     * The Base ID of the Key Vault Certificate.
     * 
     */
    @Import(name="versionlessId")
    private @Nullable Output versionlessId;

    /**
     * @return The Base ID of the Key Vault Certificate.
     * 
     */
    public Optional> versionlessId() {
        return Optional.ofNullable(this.versionlessId);
    }

    /**
     * The Base ID of the Key Vault Secret.
     * 
     */
    @Import(name="versionlessSecretId")
    private @Nullable Output versionlessSecretId;

    /**
     * @return The Base ID of the Key Vault Secret.
     * 
     */
    public Optional> versionlessSecretId() {
        return Optional.ofNullable(this.versionlessSecretId);
    }

    private CertificateState() {}

    private CertificateState(CertificateState $) {
        this.certificate = $.certificate;
        this.certificateAttributes = $.certificateAttributes;
        this.certificateData = $.certificateData;
        this.certificateDataBase64 = $.certificateDataBase64;
        this.certificatePolicy = $.certificatePolicy;
        this.keyVaultId = $.keyVaultId;
        this.name = $.name;
        this.resourceManagerId = $.resourceManagerId;
        this.resourceManagerVersionlessId = $.resourceManagerVersionlessId;
        this.secretId = $.secretId;
        this.tags = $.tags;
        this.thumbprint = $.thumbprint;
        this.version = $.version;
        this.versionlessId = $.versionlessId;
        this.versionlessSecretId = $.versionlessSecretId;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(CertificateState defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private CertificateState $;

        public Builder() {
            $ = new CertificateState();
        }

        public Builder(CertificateState defaults) {
            $ = new CertificateState(Objects.requireNonNull(defaults));
        }

        /**
         * @param certificate A `certificate` block as defined below, used to Import an existing certificate. Changing this will create a new version of the Key Vault Certificate.
         * 
         * @return builder
         * 
         */
        public Builder certificate(@Nullable Output certificate) {
            $.certificate = certificate;
            return this;
        }

        /**
         * @param certificate A `certificate` block as defined below, used to Import an existing certificate. Changing this will create a new version of the Key Vault Certificate.
         * 
         * @return builder
         * 
         */
        public Builder certificate(CertificateCertificateArgs certificate) {
            return certificate(Output.of(certificate));
        }

        /**
         * @param certificateAttributes A `certificate_attribute` block as defined below.
         * 
         * @return builder
         * 
         */
        public Builder certificateAttributes(@Nullable Output> certificateAttributes) {
            $.certificateAttributes = certificateAttributes;
            return this;
        }

        /**
         * @param certificateAttributes A `certificate_attribute` block as defined below.
         * 
         * @return builder
         * 
         */
        public Builder certificateAttributes(List certificateAttributes) {
            return certificateAttributes(Output.of(certificateAttributes));
        }

        /**
         * @param certificateAttributes A `certificate_attribute` block as defined below.
         * 
         * @return builder
         * 
         */
        public Builder certificateAttributes(CertificateCertificateAttributeArgs... certificateAttributes) {
            return certificateAttributes(List.of(certificateAttributes));
        }

        /**
         * @param certificateData The raw Key Vault Certificate data represented as a hexadecimal string.
         * 
         * @return builder
         * 
         */
        public Builder certificateData(@Nullable Output certificateData) {
            $.certificateData = certificateData;
            return this;
        }

        /**
         * @param certificateData The raw Key Vault Certificate data represented as a hexadecimal string.
         * 
         * @return builder
         * 
         */
        public Builder certificateData(String certificateData) {
            return certificateData(Output.of(certificateData));
        }

        /**
         * @param certificateDataBase64 The Base64 encoded Key Vault Certificate data.
         * 
         * @return builder
         * 
         */
        public Builder certificateDataBase64(@Nullable Output certificateDataBase64) {
            $.certificateDataBase64 = certificateDataBase64;
            return this;
        }

        /**
         * @param certificateDataBase64 The Base64 encoded Key Vault Certificate data.
         * 
         * @return builder
         * 
         */
        public Builder certificateDataBase64(String certificateDataBase64) {
            return certificateDataBase64(Output.of(certificateDataBase64));
        }

        /**
         * @param certificatePolicy A `certificate_policy` block as defined below. Changing this (except the `lifetime_action` field) will create a new version of the Key Vault Certificate.
         * 
         * > **NOTE:** When creating a Key Vault Certificate, at least one of `certificate` or `certificate_policy` is required. Provide `certificate` to import an existing certificate, `certificate_policy` to generate a new certificate.
         * 
         * @return builder
         * 
         */
        public Builder certificatePolicy(@Nullable Output certificatePolicy) {
            $.certificatePolicy = certificatePolicy;
            return this;
        }

        /**
         * @param certificatePolicy A `certificate_policy` block as defined below. Changing this (except the `lifetime_action` field) will create a new version of the Key Vault Certificate.
         * 
         * > **NOTE:** When creating a Key Vault Certificate, at least one of `certificate` or `certificate_policy` is required. Provide `certificate` to import an existing certificate, `certificate_policy` to generate a new certificate.
         * 
         * @return builder
         * 
         */
        public Builder certificatePolicy(CertificateCertificatePolicyArgs certificatePolicy) {
            return certificatePolicy(Output.of(certificatePolicy));
        }

        /**
         * @param keyVaultId The ID of the Key Vault where the Certificate should be created. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder keyVaultId(@Nullable Output keyVaultId) {
            $.keyVaultId = keyVaultId;
            return this;
        }

        /**
         * @param keyVaultId The ID of the Key Vault where the Certificate should be created. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder keyVaultId(String keyVaultId) {
            return keyVaultId(Output.of(keyVaultId));
        }

        /**
         * @param name Specifies the name of the Key Vault Certificate. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name Specifies the name of the Key Vault Certificate. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param resourceManagerId The (Versioned) ID for this Key Vault Certificate. This property points to a specific version of a Key Vault Certificate, as such using this won't auto-rotate values if used in other Azure Services.
         * 
         * @return builder
         * 
         */
        public Builder resourceManagerId(@Nullable Output resourceManagerId) {
            $.resourceManagerId = resourceManagerId;
            return this;
        }

        /**
         * @param resourceManagerId The (Versioned) ID for this Key Vault Certificate. This property points to a specific version of a Key Vault Certificate, as such using this won't auto-rotate values if used in other Azure Services.
         * 
         * @return builder
         * 
         */
        public Builder resourceManagerId(String resourceManagerId) {
            return resourceManagerId(Output.of(resourceManagerId));
        }

        /**
         * @param resourceManagerVersionlessId The Versionless ID of the Key Vault Certificate. This property allows other Azure Services (that support it) to auto-rotate their value when the Key Vault Certificate is updated.
         * 
         * @return builder
         * 
         */
        public Builder resourceManagerVersionlessId(@Nullable Output resourceManagerVersionlessId) {
            $.resourceManagerVersionlessId = resourceManagerVersionlessId;
            return this;
        }

        /**
         * @param resourceManagerVersionlessId The Versionless ID of the Key Vault Certificate. This property allows other Azure Services (that support it) to auto-rotate their value when the Key Vault Certificate is updated.
         * 
         * @return builder
         * 
         */
        public Builder resourceManagerVersionlessId(String resourceManagerVersionlessId) {
            return resourceManagerVersionlessId(Output.of(resourceManagerVersionlessId));
        }

        /**
         * @param secretId The ID of the associated Key Vault Secret.
         * 
         * @return builder
         * 
         */
        public Builder secretId(@Nullable Output secretId) {
            $.secretId = secretId;
            return this;
        }

        /**
         * @param secretId The ID of the associated Key Vault Secret.
         * 
         * @return builder
         * 
         */
        public Builder secretId(String secretId) {
            return secretId(Output.of(secretId));
        }

        /**
         * @param tags A mapping of tags to assign to the resource.
         * 
         * @return builder
         * 
         */
        public Builder tags(@Nullable Output> tags) {
            $.tags = tags;
            return this;
        }

        /**
         * @param tags A mapping of tags to assign to the resource.
         * 
         * @return builder
         * 
         */
        public Builder tags(Map tags) {
            return tags(Output.of(tags));
        }

        /**
         * @param thumbprint The X509 Thumbprint of the Key Vault Certificate represented as a hexadecimal string.
         * 
         * @return builder
         * 
         */
        public Builder thumbprint(@Nullable Output thumbprint) {
            $.thumbprint = thumbprint;
            return this;
        }

        /**
         * @param thumbprint The X509 Thumbprint of the Key Vault Certificate represented as a hexadecimal string.
         * 
         * @return builder
         * 
         */
        public Builder thumbprint(String thumbprint) {
            return thumbprint(Output.of(thumbprint));
        }

        /**
         * @param version The current version of the Key Vault Certificate.
         * 
         * @return builder
         * 
         */
        public Builder version(@Nullable Output version) {
            $.version = version;
            return this;
        }

        /**
         * @param version The current version of the Key Vault Certificate.
         * 
         * @return builder
         * 
         */
        public Builder version(String version) {
            return version(Output.of(version));
        }

        /**
         * @param versionlessId The Base ID of the Key Vault Certificate.
         * 
         * @return builder
         * 
         */
        public Builder versionlessId(@Nullable Output versionlessId) {
            $.versionlessId = versionlessId;
            return this;
        }

        /**
         * @param versionlessId The Base ID of the Key Vault Certificate.
         * 
         * @return builder
         * 
         */
        public Builder versionlessId(String versionlessId) {
            return versionlessId(Output.of(versionlessId));
        }

        /**
         * @param versionlessSecretId The Base ID of the Key Vault Secret.
         * 
         * @return builder
         * 
         */
        public Builder versionlessSecretId(@Nullable Output versionlessSecretId) {
            $.versionlessSecretId = versionlessSecretId;
            return this;
        }

        /**
         * @param versionlessSecretId The Base ID of the Key Vault Secret.
         * 
         * @return builder
         * 
         */
        public Builder versionlessSecretId(String versionlessSecretId) {
            return versionlessSecretId(Output.of(versionlessSecretId));
        }

        public CertificateState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy