Skip to content

put_access_point_policy_for_object_lambda

put_access_point_policy_for_object_lambda(
    account_id: AccountId,
    name: ObjectLambdaAccessPointName,
    policy: ObjectLambdaPolicy,
    *,
    config_overrides: Optional[S3ControlClientConfig] = None,
) -> None

This operation is not supported by directory buckets.

Creates or replaces resource policy for an Object Lambda Access Point. For an example policy, see Creating Object Lambda Access Points in the Amazon S3 User Guide.

The following actions are related to PutAccessPointPolicyForObjectLambda:

Parameters:

  • account_id (AccountId) –

    The account ID for the account that owns the specified Object Lambda Access Point.

  • name (ObjectLambdaAccessPointName) –

    The name of the Object Lambda Access Point.

  • policy (ObjectLambdaPolicy) –

    Object Lambda Access Point resource policy document.

Raises:

Source code in docs_src/capo_s3_control/_services/s3_control.py
def put_access_point_policy_for_object_lambda(
    self,
    account_id: "capo_s3_control.types.account_id.AccountId",
    name: "capo_s3_control.types.object_lambda_access_point_name.ObjectLambdaAccessPointName",
    policy: "capo_s3_control.types.object_lambda_policy.ObjectLambdaPolicy",
    *,
    config_overrides: Optional[S3ControlClientConfig] = None,
) -> None:
    """<note> <p>This operation is not supported by directory buckets.</p> </note> <p>Creates or replaces resource policy for an Object Lambda Access Point. For an example policy, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-create.html#olap-create-cli">Creating Object Lambda Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>The following actions are related to <code>PutAccessPointPolicyForObjectLambda</code>:</p> <ul> <li> <p> <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeleteAccessPointPolicyForObjectLambda.html">DeleteAccessPointPolicyForObjectLambda</a> </p> </li> <li> <p> <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetAccessPointPolicyForObjectLambda.html">GetAccessPointPolicyForObjectLambda</a> </p> </li> </ul>

    Args:
        account_id: <p>The account ID for the account that owns the specified Object Lambda Access Point.</p>
        name: <p>The name of the Object Lambda Access Point.</p>
        policy: <p>Object Lambda Access Point resource policy document.</p>

    Raises:
        capo_s3_control.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_s3_control.types.put_access_point_policy_for_object_lambda_request.PutAccessPointPolicyForObjectLambdaRequest]",
    ) -> OperationResponse[None]:
        import capo_s3_control._operations.awss3_control_service_v20180820.put_access_point_policy_for_object_lambda

        output, http_response = (
            capo_s3_control._operations.awss3_control_service_v20180820.put_access_point_policy_for_object_lambda.put_access_point_policy_for_object_lambda(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("PutAccessPointPolicyForObjectLambda")
    )
    input_: capo_s3_control.types.put_access_point_policy_for_object_lambda_request.PutAccessPointPolicyForObjectLambdaRequest = {
        "account_id": account_id,
        "name": name,
        "policy": policy,
    }

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output