There is no Condition field in the IAMPolicyStatement

Open
#458 0 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
48/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Stale
Tech stack
aws, go
Domain
authorization

Research direction

Start at the IAMPolicyStatement definition in the events package and inspect how its existing fields are represented. Add the requested Condition field using the policy shape shown in the issue, then run the package's existing tests to confirm the event type still builds and marshals correctly.

Written by the indexing model from the issue text.

Description

enhancement type/events

Is your feature request related to a problem? Please describe.

The following policy cannot be used with Lambda Custom Authorizer because there is no Condition field in the IAMPolicyStatement.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Deny",
            "Action": "execute-api:Invoke",
            "Resource": "execute-api:/{{stageNameOrWildcard}}/{{httpVerbOrWildcard}}/{{resourcePathOrWildcard}}",
            "Condition" : {
                "IpAddress": {
                    "aws:SourceIp": [ "{{sourceIpOrCIDRBlock}}", "{{sourceIpOrCIDRBlock}}" ]
                }
            }
        }
    ]
}

Describe the solution you'd like

Add a Condition field to the IAMPolicyStatement.

Describe alternatives you've considered

Additional context

Dominant language
Go
Stars
3.8k
Forks
578
Avg merge
16h 56m
Merged PRs (30d)
2

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from aws/aws-lambda-go

All issues in aws/aws-lambda-go

Similar issues

More Go issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.