GetPrincipalPolicySimulationPlainArgs

data class GetPrincipalPolicySimulationPlainArgs(val actionNames: List<String>, val additionalPoliciesJsons: List<String>? = null, val callerArn: String? = null, val contexts: List<GetPrincipalPolicySimulationContext>? = null, val permissionsBoundaryPoliciesJsons: List<String>? = null, val policySourceArn: String, val resourceArns: List<String>? = null, val resourceHandlingOption: String? = null, val resourceOwnerAccountId: String? = null, val resourcePolicyJson: String? = null) : ConvertibleToJava<GetPrincipalPolicySimulationPlainArgs>

A collection of arguments for invoking getPrincipalPolicySimulation.

Constructors

Link copied to clipboard
constructor(actionNames: List<String>, additionalPoliciesJsons: List<String>? = null, callerArn: String? = null, contexts: List<GetPrincipalPolicySimulationContext>? = null, permissionsBoundaryPoliciesJsons: List<String>? = null, policySourceArn: String, resourceArns: List<String>? = null, resourceHandlingOption: String? = null, resourceOwnerAccountId: String? = null, resourcePolicyJson: String? = null)

Properties

Link copied to clipboard

A set of IAM action names to run simulations for. Each entry in this set adds an additional hypothetical request to the simulation. Action names consist of a service prefix and an action verb separated by a colon, such as s3:GetObject. Refer to Actions, resources, and condition keys for AWS services to see the full set of possible IAM action names across all AWS services.

Link copied to clipboard

A set of additional principal policy documents to include in the simulation. The simulator will behave as if each of these policies were associated with the object specified in policy_source_arn, allowing you to test the effect of hypothetical policies not yet created.

Link copied to clipboard
val callerArn: String? = null

The ARN of an user that will appear as the "caller" of the simulated requests. If you do not specify caller_arn then the simulation will use the policy_source_arn instead, if it contains a user ARN.

Link copied to clipboard

Each context block defines an entry in the table of additional context keys in the simulated request. IAM uses context keys for both custom conditions and for interpolating dynamic request-specific values into policy values. If you use policies that include those features then you will need to provide suitable example values for those keys to achieve a realistic simulation.

Link copied to clipboard

A set of permissions boundary policy documents to include in the simulation.

Link copied to clipboard

The ARN of the IAM user, group, or role whose policies will be included in the simulation. You must closely match the form of the real service request you are simulating in order to achieve a realistic result. You can use the following additional arguments to specify other characteristics of the simulated requests:

Link copied to clipboard
val resourceArns: List<String>? = null

A set of ARNs of resources to include in the simulation. This argument is important for actions that have either required or optional resource types listed in Actions, resources, and condition keys for AWS services, and you must provide ARNs that identify AWS objects of the appropriate types for the chosen actions. The policy simulator only automatically loads policies associated with the policy_source_arn, so if your given resources have their own resource-level policy then you'll also need to provide that explicitly using the resource_policy_json argument to achieve a realistic simulation.

Link copied to clipboard

Specifies a special simulation type to run. Some EC2 actions require special simulation behaviors and a particular set of resource ARNs to achieve a realistic result. For more details, see the ResourceHandlingOption request parameter for the underlying iam:SimulatePrincipalPolicy action.

Link copied to clipboard

An AWS account ID to use for any resource ARN in resource_arns that doesn't include its own AWS account ID. If unspecified, the simulator will use the account ID from the caller_arn argument as a placeholder.

Link copied to clipboard

An IAM policy document representing the resource-level policy of all of the resources specified in resource_arns. The policy simulator cannot automatically load policies that are associated with individual resources, as described in the documentation for resource_arns above.

Functions

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