@pulumi/gcp
Version:
A Pulumi package for creating and managing Google Cloud Platform resources.
70 lines (69 loc) • 3.39 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* Generates an IAM policy document that may be referenced by and applied to
* other Google Cloud Platform IAM resources, such as the `gcp.projects.IAMPolicy` resource.
*
* **Note:** Please review the documentation of the resource that you will be using the datasource with. Some resources such as `gcp.projects.IAMPolicy` and others have limitations in their API methods which are noted on their respective page.
*/
export declare function getIAMPolicy(args?: GetIAMPolicyArgs, opts?: pulumi.InvokeOptions): Promise<GetIAMPolicyResult>;
/**
* A collection of arguments for invoking getIAMPolicy.
*/
export interface GetIAMPolicyArgs {
/**
* A nested configuration block that defines logging additional configuration for your project. This field is only supported on `gcp.projects.IAMPolicy`, `gcp.folder.IAMPolicy` and `gcp.organizations.IAMPolicy`.
*/
auditConfigs?: inputs.organizations.GetIAMPolicyAuditConfig[];
/**
* A nested configuration block (described below)
* defining a binding to be included in the policy document. Multiple
* `binding` arguments are supported.
*
* Each document configuration must have one or more `binding` blocks, which
* each accept the following arguments:
*/
bindings?: inputs.organizations.GetIAMPolicyBinding[];
}
/**
* A collection of values returned by getIAMPolicy.
*/
export interface GetIAMPolicyResult {
readonly auditConfigs?: outputs.organizations.GetIAMPolicyAuditConfig[];
readonly bindings?: outputs.organizations.GetIAMPolicyBinding[];
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
/**
* The above bindings serialized in a format suitable for
* referencing from a resource that supports IAM.
*/
readonly policyData: string;
}
/**
* Generates an IAM policy document that may be referenced by and applied to
* other Google Cloud Platform IAM resources, such as the `gcp.projects.IAMPolicy` resource.
*
* **Note:** Please review the documentation of the resource that you will be using the datasource with. Some resources such as `gcp.projects.IAMPolicy` and others have limitations in their API methods which are noted on their respective page.
*/
export declare function getIAMPolicyOutput(args?: GetIAMPolicyOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetIAMPolicyResult>;
/**
* A collection of arguments for invoking getIAMPolicy.
*/
export interface GetIAMPolicyOutputArgs {
/**
* A nested configuration block that defines logging additional configuration for your project. This field is only supported on `gcp.projects.IAMPolicy`, `gcp.folder.IAMPolicy` and `gcp.organizations.IAMPolicy`.
*/
auditConfigs?: pulumi.Input<pulumi.Input<inputs.organizations.GetIAMPolicyAuditConfigArgs>[]>;
/**
* A nested configuration block (described below)
* defining a binding to be included in the policy document. Multiple
* `binding` arguments are supported.
*
* Each document configuration must have one or more `binding` blocks, which
* each accept the following arguments:
*/
bindings?: pulumi.Input<pulumi.Input<inputs.organizations.GetIAMPolicyBindingArgs>[]>;
}