37 lines
1.2 KiB
TypeScript
37 lines
1.2 KiB
TypeScript
import type { Construct } from 'constructs';
|
|
import type { ISecret } from './secret';
|
|
import * as iam from '../../aws-iam';
|
|
import { Resource } from '../../core';
|
|
/**
|
|
* Construction properties for a ResourcePolicy
|
|
*/
|
|
export interface ResourcePolicyProps {
|
|
/**
|
|
* The secret to attach a resource-based permissions policy
|
|
*/
|
|
readonly secret: ISecret;
|
|
}
|
|
/**
|
|
* Resource Policy for SecretsManager Secrets
|
|
*
|
|
* Policies define the operations that are allowed on this resource.
|
|
*
|
|
* You almost never need to define this construct directly.
|
|
*
|
|
* All AWS resources that support resource policies have a method called
|
|
* `addToResourcePolicy()`, which will automatically create a new resource
|
|
* policy if one doesn't exist yet, otherwise it will add to the existing
|
|
* policy.
|
|
*
|
|
* Prefer to use `addToResourcePolicy()` instead.
|
|
*/
|
|
export declare class ResourcePolicy extends Resource {
|
|
/** Uniquely identifies this class. */
|
|
static readonly PROPERTY_INJECTION_ID: string;
|
|
/**
|
|
* The IAM policy document for this policy.
|
|
*/
|
|
readonly document: iam.PolicyDocument;
|
|
constructor(scope: Construct, id: string, props: ResourcePolicyProps);
|
|
}
|