Skip to content
GitHubXDiscordRSS

PolicyStore

Learn how to create, update, and manage AWS VerifiedPermissions PolicyStores using Alchemy Cloud Control.

The PolicyStore resource lets you manage AWS VerifiedPermissions PolicyStores for handling and validating permissions for your applications.

Create a basic PolicyStore with a description and validation settings.

import AWS from "alchemy/aws/control";
const basicPolicyStore = await AWS.VerifiedPermissions.PolicyStore("basicPolicyStore", {
Description: "A basic policy store for managing permissions.",
ValidationSettings: {
// Example validation settings
PolicySyntax: "JSON"
}
});

Configure a PolicyStore with a custom schema and validation settings.

const advancedPolicyStore = await AWS.VerifiedPermissions.PolicyStore("advancedPolicyStore", {
Description: "An advanced policy store with custom schema.",
ValidationSettings: {
PolicySyntax: "JSON",
EnableValidation: true
},
Schema: {
// Example schema definition
Type: "object",
Properties: {
Resource: {
Type: "string"
},
Action: {
Type: "string"
},
Effect: {
Type: "string",
Enum: ["Allow", "Deny"]
}
},
Required: ["Resource", "Action", "Effect"]
}
});

Create a PolicyStore and adopt an existing resource if it already exists.

const adoptedPolicyStore = await AWS.VerifiedPermissions.PolicyStore("adoptedPolicyStore", {
Description: "An adopted policy store that will take over an existing one if found.",
ValidationSettings: {
PolicySyntax: "JSON"
},
adopt: true // Will adopt existing resource if it exists
});

Define a PolicyStore with specific policy validation settings.

const policyValidationStore = await AWS.VerifiedPermissions.PolicyStore("policyValidationStore", {
Description: "A policy store for validating specific policies.",
ValidationSettings: {
PolicySyntax: "JSON",
EnableValidation: true,
MaxPolicySize: 2048 // Example size limit for the policy
}
});

Create a PolicyStore with a detailed schema definition for policies.

const schemaPolicyStore = await AWS.VerifiedPermissions.PolicyStore("schemaPolicyStore", {
Description: "A policy store with a detailed schema for permissions.",
ValidationSettings: {
PolicySyntax: "JSON"
},
Schema: {
Type: "object",
Properties: {
UserId: {
Type: "string"
},
Resource: {
Type: "string"
},
Action: {
Type: "string"
},
Effect: {
Type: "string",
Enum: ["Allow", "Deny"]
}
},
Required: ["UserId", "Resource", "Action", "Effect"]
}
});