/** * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for * license information. * * Code generated by Microsoft (R) AutoRest Code Generator. */ package com.microsoft.azure.management.keyvault; import java.util.UUID; import java.util.List; import com.fasterxml.jackson.annotation.JsonProperty; /** * Properties of the vault. */ public class VaultProperties { /** * The URI of the vault for performing operations on keys and secrets. */ @JsonProperty(value = "vaultUri") private String vaultUri; /** * The Azure Active Directory tenant ID that should be used for * authenticating requests to the key vault. */ @JsonProperty(value = "tenantId", required = true) private UUID tenantId; /** * SKU details. */ @JsonProperty(value = "sku", required = true) private Sku sku; /** * An array of 0 to 16 identities that have access to the key vault. All * identities in the array must use the same tenant ID as the key vault's * tenant ID. */ @JsonProperty(value = "accessPolicies", required = true) private List<AccessPolicyEntry> accessPolicies; /** * Property to specify whether Azure Virtual Machines are permitted to * retrieve certificates stored as secrets from the key vault. */ @JsonProperty(value = "enabledForDeployment") private Boolean enabledForDeployment; /** * Property to specify whether Azure Disk Encryption is permitted to * retrieve secrets from the vault and unwrap keys. */ @JsonProperty(value = "enabledForDiskEncryption") private Boolean enabledForDiskEncryption; /** * Property to specify whether Azure Resource Manager is permitted to * retrieve secrets from the key vault. */ @JsonProperty(value = "enabledForTemplateDeployment") private Boolean enabledForTemplateDeployment; /** * Get the vaultUri value. * * @return the vaultUri value */ public String vaultUri() { return this.vaultUri; } /** * Set the vaultUri value. * * @param vaultUri the vaultUri value to set * @return the VaultProperties object itself. */ public VaultProperties withVaultUri(String vaultUri) { this.vaultUri = vaultUri; return this; } /** * Get the tenantId value. * * @return the tenantId value */ public UUID tenantId() { return this.tenantId; } /** * Set the tenantId value. * * @param tenantId the tenantId value to set * @return the VaultProperties object itself. */ public VaultProperties withTenantId(UUID tenantId) { this.tenantId = tenantId; return this; } /** * Get the sku value. * * @return the sku value */ public Sku sku() { return this.sku; } /** * Set the sku value. * * @param sku the sku value to set * @return the VaultProperties object itself. */ public VaultProperties withSku(Sku sku) { this.sku = sku; return this; } /** * Get the accessPolicies value. * * @return the accessPolicies value */ public List<AccessPolicyEntry> accessPolicies() { return this.accessPolicies; } /** * Set the accessPolicies value. * * @param accessPolicies the accessPolicies value to set * @return the VaultProperties object itself. */ public VaultProperties withAccessPolicies(List<AccessPolicyEntry> accessPolicies) { this.accessPolicies = accessPolicies; return this; } /** * Get the enabledForDeployment value. * * @return the enabledForDeployment value */ public Boolean enabledForDeployment() { return this.enabledForDeployment; } /** * Set the enabledForDeployment value. * * @param enabledForDeployment the enabledForDeployment value to set * @return the VaultProperties object itself. */ public VaultProperties withEnabledForDeployment(Boolean enabledForDeployment) { this.enabledForDeployment = enabledForDeployment; return this; } /** * Get the enabledForDiskEncryption value. * * @return the enabledForDiskEncryption value */ public Boolean enabledForDiskEncryption() { return this.enabledForDiskEncryption; } /** * Set the enabledForDiskEncryption value. * * @param enabledForDiskEncryption the enabledForDiskEncryption value to set * @return the VaultProperties object itself. */ public VaultProperties withEnabledForDiskEncryption(Boolean enabledForDiskEncryption) { this.enabledForDiskEncryption = enabledForDiskEncryption; return this; } /** * Get the enabledForTemplateDeployment value. * * @return the enabledForTemplateDeployment value */ public Boolean enabledForTemplateDeployment() { return this.enabledForTemplateDeployment; } /** * Set the enabledForTemplateDeployment value. * * @param enabledForTemplateDeployment the enabledForTemplateDeployment value to set * @return the VaultProperties object itself. */ public VaultProperties withEnabledForTemplateDeployment(Boolean enabledForTemplateDeployment) { this.enabledForTemplateDeployment = enabledForTemplateDeployment; return this; } }