Skip to content

update_application

update_application(
    application_id: ApplicationId,
    *,
    config_overrides: Optional[SecurityAgentClientConfig] = None,
    role_arn: Optional[RoleArn] = None,
    default_kms_key_id: Optional[DefaultKmsKeyId] = None,
) -> UpdateApplicationResponse

Updates the configuration of an existing application, including the IAM role and default KMS key.

Parameters:

  • application_id (ApplicationId) –

    The unique identifier of the application to update.

  • role_arn (Optional[RoleArn], default: None ) –

    The updated Amazon Resource Name (ARN) of the IAM role for the application.

  • default_kms_key_id (Optional[DefaultKmsKeyId], default: None ) –

    The updated identifier of the default AWS KMS key for the application.

Raises:

Source code in docs_src/capo_securityagent/_services/security_agent.py
def update_application(
    self,
    application_id: "capo_securityagent.types.application_id.ApplicationId",
    *,
    config_overrides: Optional[SecurityAgentClientConfig] = None,
    role_arn: Optional["capo_securityagent.types.role_arn.RoleArn"] = None,
    default_kms_key_id: Optional[
        "capo_securityagent.types.default_kms_key_id.DefaultKmsKeyId"
    ] = None,
) -> (
    "capo_securityagent.types.update_application_response.UpdateApplicationResponse"
):
    """<p>Updates the configuration of an existing application, including the IAM role and default KMS key.</p>

    Args:
        application_id: <p>The unique identifier of the application to update.</p>
        role_arn: <p>The updated Amazon Resource Name (ARN) of the IAM role for the application.</p>
        default_kms_key_id: <p>The updated identifier of the default AWS KMS key for the application.</p>

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

    def _handler(
        req: "OperationRequest[capo_securityagent.types.update_application_request.UpdateApplicationRequest]",
    ) -> OperationResponse[
        "capo_securityagent.types.update_application_response.UpdateApplicationResponse"
    ]:
        import capo_securityagent._operations.security_agent.update_application

        output, http_response = (
            capo_securityagent._operations.security_agent.update_application.update_application(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateApplication")
    )
    input_: capo_securityagent.types.update_application_request.UpdateApplicationRequest = {
        "application_id": application_id
    }
    if role_arn is not None:
        input_["role_arn"] = role_arn
    if default_kms_key_id is not None:
        input_["default_kms_key_id"] = default_kms_key_id

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