VaultPolicyArgs

data class VaultPolicyArgs(val backupVaultName: Output<String>? = null, val policy: Output<String>? = null) : ConvertibleToJava<VaultPolicyArgs>

Provides an AWS Backup vault policy resource.

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.backup.Vault;
import com.pulumi.aws.iam.IamFunctions;
import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs;
import com.pulumi.aws.backup.VaultPolicy;
import com.pulumi.aws.backup.VaultPolicyArgs;
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 exampleVault = new Vault("exampleVault");
final var examplePolicyDocument = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
.statements(GetPolicyDocumentStatementArgs.builder()
.effect("Allow")
.principals(GetPolicyDocumentStatementPrincipalArgs.builder()
.type("AWS")
.identifiers("*")
.build())
.actions(
"backup:DescribeBackupVault",
"backup:DeleteBackupVault",
"backup:PutBackupVaultAccessPolicy",
"backup:DeleteBackupVaultAccessPolicy",
"backup:GetBackupVaultAccessPolicy",
"backup:StartBackupJob",
"backup:GetBackupVaultNotifications",
"backup:PutBackupVaultNotifications")
.resources(exampleVault.arn())
.build())
.build());
var exampleVaultPolicy = new VaultPolicy("exampleVaultPolicy", VaultPolicyArgs.builder()
.backupVaultName(exampleVault.name())
.policy(examplePolicyDocument.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult).applyValue(examplePolicyDocument -> examplePolicyDocument.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult.json())))
.build());
}
}

Import

Backup vault policy can be imported using the name, e.g.,

$ pulumi import aws:backup/vaultPolicy:VaultPolicy test TestVault

Constructors

Link copied to clipboard
constructor(backupVaultName: Output<String>? = null, policy: Output<String>? = null)

Properties

Link copied to clipboard
val backupVaultName: Output<String>? = null

Name of the backup vault to add policy for.

Link copied to clipboard
val policy: Output<String>? = null

The backup vault access policy document in JSON format.

Functions

Link copied to clipboard
open override fun toJava(): VaultPolicyArgs