# PolicyEngineProps

Properties for creating a PolicyEngine resource.

Extends: PolicyEngineProps
Used as props by: PolicyEngine

- Source: [`aws-bedrockagentcore/lib/policy/policy-engine.ts`](https://github.com/aws/aws-cdk/blob/v2.274.0/packages/aws-cdk-lib/aws-bedrockagentcore/lib/policy/policy-engine.ts#L34)
- Type last changed: v2.269.0 · 10 Sep 2026

## Example

```ts
const policyEngine = new agentcore.PolicyEngine(this, "MyEngine", {
  policyEngineName: "my_engine",
});

const lambdaRole = new iam.Role(this, "LambdaRole", {
  assumedBy: new iam.ServicePrincipal("lambda.amazonaws.com"),
});

// Grant read permissions
policyEngine.grantRead(lambdaRole);

// Grant evaluation permissions
policyEngine.grantEvaluate(lambdaRole);
```

## Properties

- `description`: string — Optional description for the policy engine.

  **Default:** No description

  Maximum 4,096 characters.

- `kmsKey`: [IKey](/cdk/api/v2/docs/aws-cdk-lib.aws_kms.IKey.html) — Custom KMS key for encryption.

  **Default:** AWS owned key

  [disable-awslint:prefer-ref-interface]

- `policyEngineName`: string — The name of the policy engine.

  **Default:** Auto-generated unique name

  Valid characters: a-z, A-Z, 0-9, _ (underscore)
  Must start with a letter, 1-48 characters
  Pattern: ^[A-Za-z][A-Za-z0-9_]*$

- `tags`: { [key: string]: string } — Tags for the policy engine.

  **Default:** No tags

  Maximum 50 tags.
