Skip to content

iter_simulate_custom_policy

iter_simulate_custom_policy(
    policy_input_list: SimulationPolicyListType,
    action_names: ActionNameListType,
    *,
    config_overrides: Optional[IAMClientConfig] = None,
    permissions_boundary_policy_input_list: Optional[SimulationPolicyListType] = None,
    ordered_organization_policy_input_list: Optional[OrganizationPolicyListType] = None,
    resource_arns: Optional[ResourceNameListType] = None,
    resource_policy: Optional[policyDocumentType] = None,
    resource_owner: Optional[ResourceNameType] = None,
    caller_arn: Optional[ResourceNameType] = None,
    context_entries: Optional[ContextEntryListType] = None,
    resource_handling_option: Optional[ResourceHandlingOptionType] = None,
    max_items: Optional[maxItemsType] = None,
    marker: Optional[markerType] = None,
) -> Iterator[EvaluationResult]
Source code in docs_src/capo_iam/_services/iam.py
def iter_simulate_custom_policy(
    self,
    policy_input_list: "capo_iam.types.simulation_policy_list_type.SimulationPolicyListType",
    action_names: "capo_iam.types.action_name_list_type.ActionNameListType",
    *,
    config_overrides: Optional[IAMClientConfig] = None,
    permissions_boundary_policy_input_list: Optional[
        "capo_iam.types.simulation_policy_list_type.SimulationPolicyListType"
    ] = None,
    ordered_organization_policy_input_list: Optional[
        "capo_iam.types.organization_policy_list_type.OrganizationPolicyListType"
    ] = None,
    resource_arns: Optional[
        "capo_iam.types.resource_name_list_type.ResourceNameListType"
    ] = None,
    resource_policy: Optional[
        "capo_iam.types.policy_document_type.policyDocumentType"
    ] = None,
    resource_owner: Optional[
        "capo_iam.types.resource_name_type.ResourceNameType"
    ] = None,
    caller_arn: Optional[
        "capo_iam.types.resource_name_type.ResourceNameType"
    ] = None,
    context_entries: Optional[
        "capo_iam.types.context_entry_list_type.ContextEntryListType"
    ] = None,
    resource_handling_option: Optional[
        "capo_iam.types.resource_handling_option_type.ResourceHandlingOptionType"
    ] = None,
    max_items: Optional["capo_iam.types.max_items_type.maxItemsType"] = None,
    marker: Optional["capo_iam.types.marker_type.markerType"] = None,
) -> "Iterator[capo_iam.types.evaluation_result.EvaluationResult]":
    _token = marker
    while True:
        _response = self.simulate_custom_policy(
            policy_input_list,
            action_names,
            config_overrides=config_overrides,
            permissions_boundary_policy_input_list=permissions_boundary_policy_input_list,
            ordered_organization_policy_input_list=ordered_organization_policy_input_list,
            resource_arns=resource_arns,
            resource_policy=resource_policy,
            resource_owner=resource_owner,
            caller_arn=caller_arn,
            context_entries=context_entries,
            resource_handling_option=resource_handling_option,
            max_items=max_items,
            marker=_token,
        )
        _page = _resolve_path(_response, ("evaluation_results",))
        for _item in _page or []:
            yield _item
        _token = _resolve_path(_response, ("marker",))
        if not _token or not _resolve_path(_response, ("is_truncated",)):
            break