Skip to content

Commit c768daf

Browse files
committed
performance: ondemand yaml parsing
1 parent 456bec7 commit c768daf

35,232 files changed

Lines changed: 342089 additions & 440146 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
name: apply-archive-rule
2+
description: Retroactively applies the archive rule to existing findings that meet the archive rule criteria.
3+
flags:
4+
--analyzer-arn=!: The Amazon resource name (ARN) of the analyzer.
5+
--client-token=: A client token.
6+
--rule-name=!: The name of the rule to apply.
7+
documentation:
8+
command: Retroactively applies the archive rule to existing findings that meet the archive rule criteria.
9+
flag:
10+
analyzer-arn: The Amazon resource name (ARN) of the analyzer.
11+
client-token: A client token.
12+
rule-name: The name of the rule to apply.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
name: cancel-policy-generation
2+
description: Cancels the requested policy generation.
3+
flags:
4+
--job-id=!: The `JobId` that is returned by the `StartPolicyGeneration` operation.
5+
documentation:
6+
command: Cancels the requested policy generation.
7+
flag:
8+
job-id: The `JobId` that is returned by the `StartPolicyGeneration` operation. The `JobId` can be used with `GetGeneratedPolicy` to retrieve the generated policies or used with `CancelPolicyGeneration` to cancel the policy generation request.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: check-access-not-granted
2+
description: Checks whether the specified access isn't allowed by a policy.
3+
flags:
4+
--access=!: An access object containing the permissions that shouldn't be granted by the specified policy.
5+
--policy-document=!: The JSON policy document to use as the content for the policy.
6+
--policy-type=!: The type of policy.
7+
completion:
8+
flag:
9+
policy-type:
10+
- IDENTITY_POLICY
11+
- RESOURCE_POLICY
12+
documentation:
13+
command: Checks whether the specified access isn't allowed by a policy.
14+
flag:
15+
access: An access object containing the permissions that shouldn't be granted by the specified policy. If only actions are specified, IAM Access Analyzer checks for access to peform at least one of the actions on any resource in the policy. If only resources are specified, then IAM Access Analyzer checks for access to perform any action on at least one of the resources. If both actions and resources are specified, IAM Access Analyzer checks for access to perform at least one of the specified actions on at least one of the specified resources.
16+
policy-document: The JSON policy document to use as the content for the policy.
17+
policy-type: |-
18+
The type of policy. Identity policies grant permissions to IAM principals. Identity policies include managed and inline policies for IAM roles, users, and groups.
19+
20+
Resource policies grant permissions on Amazon Web Services resources. Resource policies include trust policies for IAM roles and bucket policies for Amazon S3 buckets.
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: check-no-new-access
2+
description: Checks whether new access is allowed for an updated policy when compared to the existing policy.
3+
flags:
4+
--existing-policy-document=!: The JSON policy document to use as the content for the existing policy.
5+
--new-policy-document=!: The JSON policy document to use as the content for the updated policy.
6+
--policy-type=!: The type of policy to compare.
7+
completion:
8+
flag:
9+
policy-type:
10+
- IDENTITY_POLICY
11+
- RESOURCE_POLICY
12+
documentation:
13+
command: |-
14+
Checks whether new access is allowed for an updated policy when compared to the existing policy.
15+
16+
You can find examples for reference policies and learn how to set up and run a custom policy check for new access in the [IAM Access Analyzer custom policy checks samples](https://github.com/aws-samples/iam-access-analyzer-custom-policy-check-samples) repository on GitHub. The reference policies in this repository are meant to be passed to the `existingPolicyDocument` request parameter.
17+
flag:
18+
existing-policy-document: The JSON policy document to use as the content for the existing policy.
19+
new-policy-document: The JSON policy document to use as the content for the updated policy.
20+
policy-type: |-
21+
The type of policy to compare. Identity policies grant permissions to IAM principals. Identity policies include managed and inline policies for IAM roles, users, and groups.
22+
23+
Resource policies grant permissions on Amazon Web Services resources. Resource policies include trust policies for IAM roles and bucket policies for Amazon S3 buckets. You can provide a generic input such as identity policy or resource policy or a specific input such as managed policy or Amazon S3 bucket policy.
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
name: check-no-public-access
2+
description: Checks whether a resource policy can grant public access to the specified resource type.
3+
flags:
4+
--policy-document=!: The JSON policy document to evaluate for public access.
5+
--resource-type=!: The type of resource to evaluate for public access.
6+
completion:
7+
flag:
8+
resource-type:
9+
- AWS::DynamoDB::Table
10+
- AWS::DynamoDB::Stream
11+
- AWS::EFS::FileSystem
12+
- AWS::OpenSearchService::Domain
13+
- AWS::Kinesis::Stream
14+
- AWS::Kinesis::StreamConsumer
15+
- AWS::KMS::Key
16+
- AWS::Lambda::Function
17+
- AWS::S3::Bucket
18+
- AWS::S3::AccessPoint
19+
- AWS::S3Express::DirectoryBucket
20+
- AWS::S3::Glacier
21+
- AWS::S3Outposts::Bucket
22+
- AWS::S3Outposts::AccessPoint
23+
- AWS::SecretsManager::Secret
24+
- AWS::SNS::Topic
25+
- AWS::SQS::Queue
26+
- AWS::IAM::AssumeRolePolicyDocument
27+
- AWS::S3Tables::TableBucket
28+
- AWS::ApiGateway::RestApi
29+
- AWS::CodeArtifact::Domain
30+
- AWS::Backup::BackupVault
31+
- AWS::CloudTrail::Dashboard
32+
- AWS::CloudTrail::EventDataStore
33+
- AWS::S3Tables::Table
34+
- AWS::S3Express::AccessPoint
35+
documentation:
36+
command: Checks whether a resource policy can grant public access to the specified resource type.
37+
flag:
38+
policy-document: The JSON policy document to evaluate for public access.
39+
resource-type: |-
40+
The type of resource to evaluate for public access. For example, to check for public access to Amazon S3 buckets, you can choose `AWS::S3::Bucket` for the resource type.
41+
42+
For resource types not supported as valid values, IAM Access Analyzer will return an error.
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
name: create-access-preview
2+
description: Creates an access preview that allows you to preview IAM Access Analyzer findings for your resource before deploying resource permissions.
3+
flags:
4+
--analyzer-arn=!: The [ARN of the account analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-getting-started.html#permission-resources) used to generate the access preview.
5+
--client-token=: A client token.
6+
--configurations=!: Access control configuration for your resource that is used to generate the access preview.
7+
documentation:
8+
command: Creates an access preview that allows you to preview IAM Access Analyzer findings for your resource before deploying resource permissions.
9+
flag:
10+
analyzer-arn: The [ARN of the account analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-getting-started.html#permission-resources) used to generate the access preview. You can only create an access preview for analyzers with an `Account` type and `Active` status.
11+
client-token: A client token.
12+
configurations: Access control configuration for your resource that is used to generate the access preview. The access preview includes findings for external access allowed to the resource with the proposed access control configuration. The configuration must contain exactly one element.
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: create-analyzer
2+
description: Creates an analyzer for your account.
3+
flags:
4+
--analyzer-name=!: The name of the analyzer to create.
5+
--archive-rules=: Specifies the archive rules to add for the analyzer.
6+
--client-token=: A client token.
7+
--configuration=: Specifies the configuration of the analyzer.
8+
--tags=: An array of key-value pairs to apply to the analyzer.
9+
--type=!: The type of analyzer to create.
10+
completion:
11+
flag:
12+
type:
13+
- ACCOUNT
14+
- ORGANIZATION
15+
- ACCOUNT_UNUSED_ACCESS
16+
- ORGANIZATION_UNUSED_ACCESS
17+
- ACCOUNT_INTERNAL_ACCESS
18+
- ORGANIZATION_INTERNAL_ACCESS
19+
documentation:
20+
command: Creates an analyzer for your account.
21+
flag:
22+
analyzer-name: The name of the analyzer to create.
23+
archive-rules: Specifies the archive rules to add for the analyzer. Archive rules automatically archive findings that meet the criteria you define for the rule.
24+
client-token: A client token.
25+
configuration: Specifies the configuration of the analyzer. If the analyzer is an unused access analyzer, the specified scope of unused access is used for the configuration. If the analyzer is an internal access analyzer, the specified internal access analysis rules are used for the configuration.
26+
tags: |-
27+
An array of key-value pairs to apply to the analyzer. You can use the set of Unicode letters, digits, whitespace, `_`, `.`, `/`, `=`, `+`, and `-`.
28+
29+
For the tag key, you can specify a value that is 1 to 128 characters in length and cannot be prefixed with `aws:`.
30+
31+
For the tag value, you can specify a value that is 0 to 256 characters in length.
32+
type: The type of analyzer to create. You can create only one analyzer per account per Region. You can create up to 5 analyzers per organization per Region.
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
name: create-archive-rule
2+
description: Creates an archive rule for the specified analyzer.
3+
flags:
4+
--analyzer-name=!: The name of the created analyzer.
5+
--client-token=: A client token.
6+
--filter=!: The criteria for the rule.
7+
--rule-name=!: The name of the rule to create.
8+
documentation:
9+
command: |-
10+
Creates an archive rule for the specified analyzer. Archive rules automatically archive new findings that meet the criteria you define when you create the rule.
11+
12+
To learn about filter keys that you can use to create an archive rule, see [IAM Access Analyzer filter keys](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-reference-filter-keys.html) in the **IAM User Guide**.
13+
flag:
14+
analyzer-name: The name of the created analyzer.
15+
client-token: A client token.
16+
filter: The criteria for the rule.
17+
rule-name: The name of the rule to create.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
name: delete-analyzer
2+
description: Deletes the specified analyzer.
3+
flags:
4+
--analyzer-name=!: The name of the analyzer to delete.
5+
--client-token=: A client token.
6+
documentation:
7+
command: Deletes the specified analyzer. When you delete an analyzer, IAM Access Analyzer is disabled for the account or organization in the current or specific Region. All findings that were generated by the analyzer are deleted. You cannot undo this action.
8+
flag:
9+
analyzer-name: The name of the analyzer to delete.
10+
client-token: A client token.
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
name: delete-archive-rule
2+
description: Deletes the specified archive rule.
3+
flags:
4+
--analyzer-name=!: The name of the analyzer that associated with the archive rule to delete.
5+
--client-token=: A client token.
6+
--rule-name=!: The name of the rule to delete.
7+
documentation:
8+
command: Deletes the specified archive rule.
9+
flag:
10+
analyzer-name: The name of the analyzer that associated with the archive rule to delete.
11+
client-token: A client token.
12+
rule-name: The name of the rule to delete.

0 commit comments

Comments
 (0)