aws-samples / aws-control-tower-guardduty-enabler

Apache License 2.0
41 stars 26 forks source link

GuardDuty Activation Error #20

Closed jefp closed 4 years ago

jefp commented 4 years ago

The latest version is not working. The lambda is failing with:

Unknown parameter in input: "AdminId", must be one of: DetectorId, MasterId, InvitationId
Traceback (most recent call last):
  File "/var/task/guardduty_enabler.py", line 458, in lambda_handler
    AdminId=str(admin_account)
  File "/var/task/botocore/client.py", line 316, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/var/task/botocore/client.py", line 608, in _make_api_call
    api_params, operation_model, context=request_context)
  File "/var/task/botocore/client.py", line 656, in _convert_to_request_dict
    api_params, operation_model)
  File "/var/task/botocore/validate.py", line 297, in serialize_to_request
    raise ParamValidationError(report=report.generate_report())

This is because the src/guardduty_enabler.py line 458 is

   gd_client.accept_invitation(
                                    DetectorId=detector_id,
                                    InvitationId=invitation_id,
                                    AdminId=str(admin_account)
                                )

But the boto3 reference is:

response = client.accept_invitation(
    DetectorId='string',
    MasterId='string',
    InvitationId='string'
)

https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/guardduty.html#GuardDuty.Client.accept_invitation

cornickj commented 4 years ago

Thanks for the report - it is fixed now