aws-cloudformation / aws-cloudformation/cloudformation-resource-schema
Support complex permissions
- Dominant language
- Java
- Stars
- 96
- Forks
- 38
- PR merge metrics
- No merged PRs in 30d
Description
Currently, the `permissions` model only supports action-based permissions with no additional scope. I propose the addition of a complex permissions set such as:
```
{
"typeName": "Foo::Bar::Baz",
...
"handlers": {
"create": {
"complexPermissions": [
{
"Action": [
"s3:GetObject",
"s3:PutObject",
"s3:List*"
],
"Resource": [
"arn:aws:s3:::limited*",
"arn:aws:s3:::otherlimited*"
],
"Condition": [
"ForAnyValue:StringEquals": {
"aws:CalledVia": [
"dynamodb.amazonaws.com"
]
}
],
"Effect": "Allow"
},
{
"Action": [
"s3:GetObject",
"s3:PutObject",
"s3:List*"
],
"NotResource": [
"arn:aws:s3:::limited*"
],
"Effect": "Deny"
},
...
]
},
...
}
}
```
Labels: enhancement
Contributor guide
Research direction
Start by locating the permissions model and its handler representation; compare the current action-only shape with the proposed complexPermissions entries. Clarify how Action, Resource, Condition, NotResource, and Effect should be represented before implementation. Done requires an accepted schema change covering the example.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, java
- Domain
- cloud, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100