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/async_security_agent.py
| async def update_application(
self,
application_id: "capo_securityagent.types.application_id.ApplicationId",
*,
config_overrides: Optional[AsyncSecurityAgentClientConfig] = 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.
"""
async def _handler(
req: "AsyncOperationRequest[capo_securityagent.types.update_application_request.UpdateApplicationRequest]",
) -> AsyncOperationResponse[
"capo_securityagent.types.update_application_response.UpdateApplicationResponse"
]:
import capo_securityagent._operations.security_agent.update_application
(
output,
http_response,
) = await capo_securityagent._operations.security_agent.update_application.async_update_application(
req.options, req.input
)
return AsyncOperationResponse(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 = await aexecute_pipeline(
AsyncOperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
await response.response.aclose()
return response.output
|