aws-sdk-accessanalyzer 1.65.0 → 1.68.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +15 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-accessanalyzer/client.rb +81 -29
- data/lib/aws-sdk-accessanalyzer/client_api.rb +79 -0
- data/lib/aws-sdk-accessanalyzer/endpoint_provider.rb +14 -18
- data/lib/aws-sdk-accessanalyzer/types.rb +208 -0
- data/lib/aws-sdk-accessanalyzer.rb +1 -1
- data/sig/client.rbs +11 -0
- data/sig/types.rbs +61 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d6a758b54268310a3578756259981cef95006a73fb3bf67e8cc0c2fedb029951
|
4
|
+
data.tar.gz: 753ad3129338512ec94f43b5849176eea1b63b3b3c0f81a61bfaac5c01813e4c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d47d510d82a8bf11d76a90bd080488aa0bbc0429fc8860e9e8256fde946e8d24fb356cd1cd7ae379d9cb39a2d7fb97570bdd32e27a7b6b4d7223d26cb8c07dfa
|
7
|
+
data.tar.gz: 28c2767536244207a831fe0a4ab6dfb2621efae58b7b1668de3725019bc00cee9e267c7ac6ce6e31a07d22ec3fd574033a8a558a005c036e07d971a83c2d2581
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,21 @@
|
|
1
1
|
Unreleased Changes
|
2
2
|
------------------
|
3
3
|
|
4
|
+
1.68.0 (2025-02-18)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
8
|
+
|
9
|
+
1.67.0 (2025-02-13)
|
10
|
+
------------------
|
11
|
+
|
12
|
+
* Feature - This release introduces the getFindingsStatistics API, enabling users to retrieve aggregated finding statistics for IAM Access Analyzer's external access and unused access analysis features. Updated service API and documentation.
|
13
|
+
|
14
|
+
1.66.0 (2025-02-06)
|
15
|
+
------------------
|
16
|
+
|
17
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
18
|
+
|
4
19
|
1.65.0 (2025-01-15)
|
5
20
|
------------------
|
6
21
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.68.0
|
@@ -7,34 +7,34 @@
|
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
10
|
-
require 'seahorse/client/plugins/content_length
|
11
|
-
require 'aws-sdk-core/plugins/credentials_configuration
|
12
|
-
require 'aws-sdk-core/plugins/logging
|
13
|
-
require 'aws-sdk-core/plugins/param_converter
|
14
|
-
require 'aws-sdk-core/plugins/param_validator
|
15
|
-
require 'aws-sdk-core/plugins/user_agent
|
16
|
-
require 'aws-sdk-core/plugins/helpful_socket_errors
|
17
|
-
require 'aws-sdk-core/plugins/retry_errors
|
18
|
-
require 'aws-sdk-core/plugins/global_configuration
|
19
|
-
require 'aws-sdk-core/plugins/regional_endpoint
|
20
|
-
require 'aws-sdk-core/plugins/endpoint_discovery
|
21
|
-
require 'aws-sdk-core/plugins/endpoint_pattern
|
22
|
-
require 'aws-sdk-core/plugins/response_paging
|
23
|
-
require 'aws-sdk-core/plugins/stub_responses
|
24
|
-
require 'aws-sdk-core/plugins/idempotency_token
|
25
|
-
require 'aws-sdk-core/plugins/invocation_id
|
26
|
-
require 'aws-sdk-core/plugins/jsonvalue_converter
|
27
|
-
require 'aws-sdk-core/plugins/client_metrics_plugin
|
28
|
-
require 'aws-sdk-core/plugins/client_metrics_send_plugin
|
29
|
-
require 'aws-sdk-core/plugins/transfer_encoding
|
30
|
-
require 'aws-sdk-core/plugins/http_checksum
|
31
|
-
require 'aws-sdk-core/plugins/checksum_algorithm
|
32
|
-
require 'aws-sdk-core/plugins/request_compression
|
33
|
-
require 'aws-sdk-core/plugins/defaults_mode
|
34
|
-
require 'aws-sdk-core/plugins/recursion_detection
|
35
|
-
require 'aws-sdk-core/plugins/telemetry
|
36
|
-
require 'aws-sdk-core/plugins/sign
|
37
|
-
require 'aws-sdk-core/plugins/protocols/rest_json
|
10
|
+
require 'seahorse/client/plugins/content_length'
|
11
|
+
require 'aws-sdk-core/plugins/credentials_configuration'
|
12
|
+
require 'aws-sdk-core/plugins/logging'
|
13
|
+
require 'aws-sdk-core/plugins/param_converter'
|
14
|
+
require 'aws-sdk-core/plugins/param_validator'
|
15
|
+
require 'aws-sdk-core/plugins/user_agent'
|
16
|
+
require 'aws-sdk-core/plugins/helpful_socket_errors'
|
17
|
+
require 'aws-sdk-core/plugins/retry_errors'
|
18
|
+
require 'aws-sdk-core/plugins/global_configuration'
|
19
|
+
require 'aws-sdk-core/plugins/regional_endpoint'
|
20
|
+
require 'aws-sdk-core/plugins/endpoint_discovery'
|
21
|
+
require 'aws-sdk-core/plugins/endpoint_pattern'
|
22
|
+
require 'aws-sdk-core/plugins/response_paging'
|
23
|
+
require 'aws-sdk-core/plugins/stub_responses'
|
24
|
+
require 'aws-sdk-core/plugins/idempotency_token'
|
25
|
+
require 'aws-sdk-core/plugins/invocation_id'
|
26
|
+
require 'aws-sdk-core/plugins/jsonvalue_converter'
|
27
|
+
require 'aws-sdk-core/plugins/client_metrics_plugin'
|
28
|
+
require 'aws-sdk-core/plugins/client_metrics_send_plugin'
|
29
|
+
require 'aws-sdk-core/plugins/transfer_encoding'
|
30
|
+
require 'aws-sdk-core/plugins/http_checksum'
|
31
|
+
require 'aws-sdk-core/plugins/checksum_algorithm'
|
32
|
+
require 'aws-sdk-core/plugins/request_compression'
|
33
|
+
require 'aws-sdk-core/plugins/defaults_mode'
|
34
|
+
require 'aws-sdk-core/plugins/recursion_detection'
|
35
|
+
require 'aws-sdk-core/plugins/telemetry'
|
36
|
+
require 'aws-sdk-core/plugins/sign'
|
37
|
+
require 'aws-sdk-core/plugins/protocols/rest_json'
|
38
38
|
|
39
39
|
module Aws::AccessAnalyzer
|
40
40
|
# An API client for AccessAnalyzer. To construct a client, you need to configure a `:region` and `:credentials`.
|
@@ -1747,6 +1747,58 @@ module Aws::AccessAnalyzer
|
|
1747
1747
|
req.send_request(options)
|
1748
1748
|
end
|
1749
1749
|
|
1750
|
+
# Retrieves a list of aggregated finding statistics for an external
|
1751
|
+
# access or unused access analyzer.
|
1752
|
+
#
|
1753
|
+
# @option params [required, String] :analyzer_arn
|
1754
|
+
# The [ARN of the analyzer][1] used to generate the statistics.
|
1755
|
+
#
|
1756
|
+
#
|
1757
|
+
#
|
1758
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-getting-started.html#permission-resources
|
1759
|
+
#
|
1760
|
+
# @return [Types::GetFindingsStatisticsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1761
|
+
#
|
1762
|
+
# * {Types::GetFindingsStatisticsResponse#findings_statistics #findings_statistics} => Array<Types::FindingsStatistics>
|
1763
|
+
# * {Types::GetFindingsStatisticsResponse#last_updated_at #last_updated_at} => Time
|
1764
|
+
#
|
1765
|
+
# @example Request syntax with placeholder values
|
1766
|
+
#
|
1767
|
+
# resp = client.get_findings_statistics({
|
1768
|
+
# analyzer_arn: "AnalyzerArn", # required
|
1769
|
+
# })
|
1770
|
+
#
|
1771
|
+
# @example Response structure
|
1772
|
+
#
|
1773
|
+
# resp.findings_statistics #=> Array
|
1774
|
+
# resp.findings_statistics[0].external_access_findings_statistics.resource_type_statistics #=> Hash
|
1775
|
+
# resp.findings_statistics[0].external_access_findings_statistics.resource_type_statistics["ResourceType"].total_active_public #=> Integer
|
1776
|
+
# resp.findings_statistics[0].external_access_findings_statistics.resource_type_statistics["ResourceType"].total_active_cross_account #=> Integer
|
1777
|
+
# resp.findings_statistics[0].external_access_findings_statistics.total_active_findings #=> Integer
|
1778
|
+
# resp.findings_statistics[0].external_access_findings_statistics.total_archived_findings #=> Integer
|
1779
|
+
# resp.findings_statistics[0].external_access_findings_statistics.total_resolved_findings #=> Integer
|
1780
|
+
# resp.findings_statistics[0].unused_access_findings_statistics.unused_access_type_statistics #=> Array
|
1781
|
+
# resp.findings_statistics[0].unused_access_findings_statistics.unused_access_type_statistics[0].unused_access_type #=> String
|
1782
|
+
# resp.findings_statistics[0].unused_access_findings_statistics.unused_access_type_statistics[0].total #=> Integer
|
1783
|
+
# resp.findings_statistics[0].unused_access_findings_statistics.top_accounts #=> Array
|
1784
|
+
# resp.findings_statistics[0].unused_access_findings_statistics.top_accounts[0].account #=> String
|
1785
|
+
# resp.findings_statistics[0].unused_access_findings_statistics.top_accounts[0].number_of_active_findings #=> Integer
|
1786
|
+
# resp.findings_statistics[0].unused_access_findings_statistics.top_accounts[0].details #=> Hash
|
1787
|
+
# resp.findings_statistics[0].unused_access_findings_statistics.top_accounts[0].details["String"] #=> Integer
|
1788
|
+
# resp.findings_statistics[0].unused_access_findings_statistics.total_active_findings #=> Integer
|
1789
|
+
# resp.findings_statistics[0].unused_access_findings_statistics.total_archived_findings #=> Integer
|
1790
|
+
# resp.findings_statistics[0].unused_access_findings_statistics.total_resolved_findings #=> Integer
|
1791
|
+
# resp.last_updated_at #=> Time
|
1792
|
+
#
|
1793
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/GetFindingsStatistics AWS API Documentation
|
1794
|
+
#
|
1795
|
+
# @overload get_findings_statistics(params = {})
|
1796
|
+
# @param [Hash] params ({})
|
1797
|
+
def get_findings_statistics(params = {}, options = {})
|
1798
|
+
req = build_request(:get_findings_statistics, params)
|
1799
|
+
req.send_request(options)
|
1800
|
+
end
|
1801
|
+
|
1750
1802
|
# Retrieves the policy that was generated using `StartPolicyGeneration`.
|
1751
1803
|
#
|
1752
1804
|
# @option params [required, String] :job_id
|
@@ -2774,7 +2826,7 @@ module Aws::AccessAnalyzer
|
|
2774
2826
|
tracer: tracer
|
2775
2827
|
)
|
2776
2828
|
context[:gem_name] = 'aws-sdk-accessanalyzer'
|
2777
|
-
context[:gem_version] = '1.
|
2829
|
+
context[:gem_version] = '1.68.0'
|
2778
2830
|
Seahorse::Client::Request.new(handlers, context)
|
2779
2831
|
end
|
2780
2832
|
|
@@ -33,6 +33,7 @@ module Aws::AccessAnalyzer
|
|
33
33
|
AccessPreviewSummary = Shapes::StructureShape.new(name: 'AccessPreviewSummary')
|
34
34
|
AccessPreviewsList = Shapes::ListShape.new(name: 'AccessPreviewsList')
|
35
35
|
AccessResourcesList = Shapes::ListShape.new(name: 'AccessResourcesList')
|
36
|
+
AccountAggregations = Shapes::ListShape.new(name: 'AccountAggregations')
|
36
37
|
AccountIdsList = Shapes::ListShape.new(name: 'AccountIdsList')
|
37
38
|
AclCanonicalId = Shapes::StringShape.new(name: 'AclCanonicalId')
|
38
39
|
AclGrantee = Shapes::UnionShape.new(name: 'AclGrantee')
|
@@ -98,8 +99,11 @@ module Aws::AccessAnalyzer
|
|
98
99
|
EfsFileSystemConfiguration = Shapes::StructureShape.new(name: 'EfsFileSystemConfiguration')
|
99
100
|
EfsFileSystemPolicy = Shapes::StringShape.new(name: 'EfsFileSystemPolicy')
|
100
101
|
ExternalAccessDetails = Shapes::StructureShape.new(name: 'ExternalAccessDetails')
|
102
|
+
ExternalAccessFindingsStatistics = Shapes::StructureShape.new(name: 'ExternalAccessFindingsStatistics')
|
101
103
|
FilterCriteriaMap = Shapes::MapShape.new(name: 'FilterCriteriaMap')
|
102
104
|
Finding = Shapes::StructureShape.new(name: 'Finding')
|
105
|
+
FindingAggregationAccountDetails = Shapes::StructureShape.new(name: 'FindingAggregationAccountDetails')
|
106
|
+
FindingAggregationAccountDetailsMap = Shapes::MapShape.new(name: 'FindingAggregationAccountDetailsMap')
|
103
107
|
FindingChangeType = Shapes::StringShape.new(name: 'FindingChangeType')
|
104
108
|
FindingDetails = Shapes::UnionShape.new(name: 'FindingDetails')
|
105
109
|
FindingDetailsList = Shapes::ListShape.new(name: 'FindingDetailsList')
|
@@ -116,6 +120,8 @@ module Aws::AccessAnalyzer
|
|
116
120
|
FindingType = Shapes::StringShape.new(name: 'FindingType')
|
117
121
|
FindingsList = Shapes::ListShape.new(name: 'FindingsList')
|
118
122
|
FindingsListV2 = Shapes::ListShape.new(name: 'FindingsListV2')
|
123
|
+
FindingsStatistics = Shapes::UnionShape.new(name: 'FindingsStatistics')
|
124
|
+
FindingsStatisticsList = Shapes::ListShape.new(name: 'FindingsStatisticsList')
|
119
125
|
GenerateFindingRecommendationRequest = Shapes::StructureShape.new(name: 'GenerateFindingRecommendationRequest')
|
120
126
|
GenerateFindingRecommendationRequestIdString = Shapes::StringShape.new(name: 'GenerateFindingRecommendationRequestIdString')
|
121
127
|
GeneratedPolicy = Shapes::StructureShape.new(name: 'GeneratedPolicy')
|
@@ -138,6 +144,8 @@ module Aws::AccessAnalyzer
|
|
138
144
|
GetFindingResponse = Shapes::StructureShape.new(name: 'GetFindingResponse')
|
139
145
|
GetFindingV2Request = Shapes::StructureShape.new(name: 'GetFindingV2Request')
|
140
146
|
GetFindingV2Response = Shapes::StructureShape.new(name: 'GetFindingV2Response')
|
147
|
+
GetFindingsStatisticsRequest = Shapes::StructureShape.new(name: 'GetFindingsStatisticsRequest')
|
148
|
+
GetFindingsStatisticsResponse = Shapes::StructureShape.new(name: 'GetFindingsStatisticsResponse')
|
141
149
|
GetGeneratedPolicyRequest = Shapes::StructureShape.new(name: 'GetGeneratedPolicyRequest')
|
142
150
|
GetGeneratedPolicyResponse = Shapes::StructureShape.new(name: 'GetGeneratedPolicyResponse')
|
143
151
|
GranteePrincipal = Shapes::StringShape.new(name: 'GranteePrincipal')
|
@@ -232,6 +240,8 @@ module Aws::AccessAnalyzer
|
|
232
240
|
ResourceControlPolicyRestriction = Shapes::StringShape.new(name: 'ResourceControlPolicyRestriction')
|
233
241
|
ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
|
234
242
|
ResourceType = Shapes::StringShape.new(name: 'ResourceType')
|
243
|
+
ResourceTypeDetails = Shapes::StructureShape.new(name: 'ResourceTypeDetails')
|
244
|
+
ResourceTypeStatisticsMap = Shapes::MapShape.new(name: 'ResourceTypeStatisticsMap')
|
235
245
|
RetiringPrincipal = Shapes::StringShape.new(name: 'RetiringPrincipal')
|
236
246
|
RoleArn = Shapes::StringShape.new(name: 'RoleArn')
|
237
247
|
S3AccessPointConfiguration = Shapes::StructureShape.new(name: 'S3AccessPointConfiguration')
|
@@ -278,6 +288,9 @@ module Aws::AccessAnalyzer
|
|
278
288
|
UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
|
279
289
|
UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
|
280
290
|
UnusedAccessConfiguration = Shapes::StructureShape.new(name: 'UnusedAccessConfiguration')
|
291
|
+
UnusedAccessFindingsStatistics = Shapes::StructureShape.new(name: 'UnusedAccessFindingsStatistics')
|
292
|
+
UnusedAccessTypeStatistics = Shapes::StructureShape.new(name: 'UnusedAccessTypeStatistics')
|
293
|
+
UnusedAccessTypeStatisticsList = Shapes::ListShape.new(name: 'UnusedAccessTypeStatisticsList')
|
281
294
|
UnusedAction = Shapes::StructureShape.new(name: 'UnusedAction')
|
282
295
|
UnusedActionList = Shapes::ListShape.new(name: 'UnusedActionList')
|
283
296
|
UnusedIamRoleDetails = Shapes::StructureShape.new(name: 'UnusedIamRoleDetails')
|
@@ -354,6 +367,8 @@ module Aws::AccessAnalyzer
|
|
354
367
|
|
355
368
|
AccessResourcesList.member = Shapes::ShapeRef.new(shape: Resource)
|
356
369
|
|
370
|
+
AccountAggregations.member = Shapes::ShapeRef.new(shape: FindingAggregationAccountDetails)
|
371
|
+
|
357
372
|
AccountIdsList.member = Shapes::ShapeRef.new(shape: String)
|
358
373
|
|
359
374
|
AclGrantee.add_member(:id, Shapes::ShapeRef.new(shape: AclCanonicalId, location_name: "id"))
|
@@ -587,6 +602,12 @@ module Aws::AccessAnalyzer
|
|
587
602
|
ExternalAccessDetails.add_member(:resource_control_policy_restriction, Shapes::ShapeRef.new(shape: ResourceControlPolicyRestriction, location_name: "resourceControlPolicyRestriction"))
|
588
603
|
ExternalAccessDetails.struct_class = Types::ExternalAccessDetails
|
589
604
|
|
605
|
+
ExternalAccessFindingsStatistics.add_member(:resource_type_statistics, Shapes::ShapeRef.new(shape: ResourceTypeStatisticsMap, location_name: "resourceTypeStatistics"))
|
606
|
+
ExternalAccessFindingsStatistics.add_member(:total_active_findings, Shapes::ShapeRef.new(shape: Integer, location_name: "totalActiveFindings"))
|
607
|
+
ExternalAccessFindingsStatistics.add_member(:total_archived_findings, Shapes::ShapeRef.new(shape: Integer, location_name: "totalArchivedFindings"))
|
608
|
+
ExternalAccessFindingsStatistics.add_member(:total_resolved_findings, Shapes::ShapeRef.new(shape: Integer, location_name: "totalResolvedFindings"))
|
609
|
+
ExternalAccessFindingsStatistics.struct_class = Types::ExternalAccessFindingsStatistics
|
610
|
+
|
590
611
|
FilterCriteriaMap.key = Shapes::ShapeRef.new(shape: String)
|
591
612
|
FilterCriteriaMap.value = Shapes::ShapeRef.new(shape: Criterion)
|
592
613
|
|
@@ -607,6 +628,14 @@ module Aws::AccessAnalyzer
|
|
607
628
|
Finding.add_member(:resource_control_policy_restriction, Shapes::ShapeRef.new(shape: ResourceControlPolicyRestriction, location_name: "resourceControlPolicyRestriction"))
|
608
629
|
Finding.struct_class = Types::Finding
|
609
630
|
|
631
|
+
FindingAggregationAccountDetails.add_member(:account, Shapes::ShapeRef.new(shape: String, location_name: "account"))
|
632
|
+
FindingAggregationAccountDetails.add_member(:number_of_active_findings, Shapes::ShapeRef.new(shape: Integer, location_name: "numberOfActiveFindings"))
|
633
|
+
FindingAggregationAccountDetails.add_member(:details, Shapes::ShapeRef.new(shape: FindingAggregationAccountDetailsMap, location_name: "details"))
|
634
|
+
FindingAggregationAccountDetails.struct_class = Types::FindingAggregationAccountDetails
|
635
|
+
|
636
|
+
FindingAggregationAccountDetailsMap.key = Shapes::ShapeRef.new(shape: String)
|
637
|
+
FindingAggregationAccountDetailsMap.value = Shapes::ShapeRef.new(shape: Integer)
|
638
|
+
|
610
639
|
FindingDetails.add_member(:external_access_details, Shapes::ShapeRef.new(shape: ExternalAccessDetails, location_name: "externalAccessDetails"))
|
611
640
|
FindingDetails.add_member(:unused_permission_details, Shapes::ShapeRef.new(shape: UnusedPermissionDetails, location_name: "unusedPermissionDetails"))
|
612
641
|
FindingDetails.add_member(:unused_iam_user_access_key_details, Shapes::ShapeRef.new(shape: UnusedIamUserAccessKeyDetails, location_name: "unusedIamUserAccessKeyDetails"))
|
@@ -668,6 +697,16 @@ module Aws::AccessAnalyzer
|
|
668
697
|
|
669
698
|
FindingsListV2.member = Shapes::ShapeRef.new(shape: FindingSummaryV2)
|
670
699
|
|
700
|
+
FindingsStatistics.add_member(:external_access_findings_statistics, Shapes::ShapeRef.new(shape: ExternalAccessFindingsStatistics, location_name: "externalAccessFindingsStatistics"))
|
701
|
+
FindingsStatistics.add_member(:unused_access_findings_statistics, Shapes::ShapeRef.new(shape: UnusedAccessFindingsStatistics, location_name: "unusedAccessFindingsStatistics"))
|
702
|
+
FindingsStatistics.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
|
703
|
+
FindingsStatistics.add_member_subclass(:external_access_findings_statistics, Types::FindingsStatistics::ExternalAccessFindingsStatistics)
|
704
|
+
FindingsStatistics.add_member_subclass(:unused_access_findings_statistics, Types::FindingsStatistics::UnusedAccessFindingsStatistics)
|
705
|
+
FindingsStatistics.add_member_subclass(:unknown, Types::FindingsStatistics::Unknown)
|
706
|
+
FindingsStatistics.struct_class = Types::FindingsStatistics
|
707
|
+
|
708
|
+
FindingsStatisticsList.member = Shapes::ShapeRef.new(shape: FindingsStatistics)
|
709
|
+
|
671
710
|
GenerateFindingRecommendationRequest.add_member(:analyzer_arn, Shapes::ShapeRef.new(shape: AnalyzerArn, required: true, location: "querystring", location_name: "analyzerArn"))
|
672
711
|
GenerateFindingRecommendationRequest.add_member(:id, Shapes::ShapeRef.new(shape: GenerateFindingRecommendationRequestIdString, required: true, location: "uri", location_name: "id"))
|
673
712
|
GenerateFindingRecommendationRequest.struct_class = Types::GenerateFindingRecommendationRequest
|
@@ -756,6 +795,13 @@ module Aws::AccessAnalyzer
|
|
756
795
|
GetFindingV2Response.add_member(:finding_type, Shapes::ShapeRef.new(shape: FindingType, location_name: "findingType"))
|
757
796
|
GetFindingV2Response.struct_class = Types::GetFindingV2Response
|
758
797
|
|
798
|
+
GetFindingsStatisticsRequest.add_member(:analyzer_arn, Shapes::ShapeRef.new(shape: AnalyzerArn, required: true, location_name: "analyzerArn"))
|
799
|
+
GetFindingsStatisticsRequest.struct_class = Types::GetFindingsStatisticsRequest
|
800
|
+
|
801
|
+
GetFindingsStatisticsResponse.add_member(:findings_statistics, Shapes::ShapeRef.new(shape: FindingsStatisticsList, location_name: "findingsStatistics"))
|
802
|
+
GetFindingsStatisticsResponse.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastUpdatedAt"))
|
803
|
+
GetFindingsStatisticsResponse.struct_class = Types::GetFindingsStatisticsResponse
|
804
|
+
|
759
805
|
GetGeneratedPolicyRequest.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, required: true, location: "uri", location_name: "jobId"))
|
760
806
|
GetGeneratedPolicyRequest.add_member(:include_resource_placeholders, Shapes::ShapeRef.new(shape: Boolean, location: "querystring", location_name: "includeResourcePlaceholders"))
|
761
807
|
GetGeneratedPolicyRequest.add_member(:include_service_level_template, Shapes::ShapeRef.new(shape: Boolean, location: "querystring", location_name: "includeServiceLevelTemplate"))
|
@@ -1008,6 +1054,13 @@ module Aws::AccessAnalyzer
|
|
1008
1054
|
ResourceNotFoundException.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "resourceType"))
|
1009
1055
|
ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
|
1010
1056
|
|
1057
|
+
ResourceTypeDetails.add_member(:total_active_public, Shapes::ShapeRef.new(shape: Integer, location_name: "totalActivePublic"))
|
1058
|
+
ResourceTypeDetails.add_member(:total_active_cross_account, Shapes::ShapeRef.new(shape: Integer, location_name: "totalActiveCrossAccount"))
|
1059
|
+
ResourceTypeDetails.struct_class = Types::ResourceTypeDetails
|
1060
|
+
|
1061
|
+
ResourceTypeStatisticsMap.key = Shapes::ShapeRef.new(shape: ResourceType)
|
1062
|
+
ResourceTypeStatisticsMap.value = Shapes::ShapeRef.new(shape: ResourceTypeDetails)
|
1063
|
+
|
1011
1064
|
S3AccessPointConfiguration.add_member(:access_point_policy, Shapes::ShapeRef.new(shape: AccessPointPolicy, location_name: "accessPointPolicy"))
|
1012
1065
|
S3AccessPointConfiguration.add_member(:public_access_block, Shapes::ShapeRef.new(shape: S3PublicAccessBlockConfiguration, location_name: "publicAccessBlock"))
|
1013
1066
|
S3AccessPointConfiguration.add_member(:network_origin, Shapes::ShapeRef.new(shape: NetworkOriginConfiguration, location_name: "networkOrigin"))
|
@@ -1124,6 +1177,19 @@ module Aws::AccessAnalyzer
|
|
1124
1177
|
UnusedAccessConfiguration.add_member(:analysis_rule, Shapes::ShapeRef.new(shape: AnalysisRule, location_name: "analysisRule"))
|
1125
1178
|
UnusedAccessConfiguration.struct_class = Types::UnusedAccessConfiguration
|
1126
1179
|
|
1180
|
+
UnusedAccessFindingsStatistics.add_member(:unused_access_type_statistics, Shapes::ShapeRef.new(shape: UnusedAccessTypeStatisticsList, location_name: "unusedAccessTypeStatistics"))
|
1181
|
+
UnusedAccessFindingsStatistics.add_member(:top_accounts, Shapes::ShapeRef.new(shape: AccountAggregations, location_name: "topAccounts"))
|
1182
|
+
UnusedAccessFindingsStatistics.add_member(:total_active_findings, Shapes::ShapeRef.new(shape: Integer, location_name: "totalActiveFindings"))
|
1183
|
+
UnusedAccessFindingsStatistics.add_member(:total_archived_findings, Shapes::ShapeRef.new(shape: Integer, location_name: "totalArchivedFindings"))
|
1184
|
+
UnusedAccessFindingsStatistics.add_member(:total_resolved_findings, Shapes::ShapeRef.new(shape: Integer, location_name: "totalResolvedFindings"))
|
1185
|
+
UnusedAccessFindingsStatistics.struct_class = Types::UnusedAccessFindingsStatistics
|
1186
|
+
|
1187
|
+
UnusedAccessTypeStatistics.add_member(:unused_access_type, Shapes::ShapeRef.new(shape: String, location_name: "unusedAccessType"))
|
1188
|
+
UnusedAccessTypeStatistics.add_member(:total, Shapes::ShapeRef.new(shape: Integer, location_name: "total"))
|
1189
|
+
UnusedAccessTypeStatistics.struct_class = Types::UnusedAccessTypeStatistics
|
1190
|
+
|
1191
|
+
UnusedAccessTypeStatisticsList.member = Shapes::ShapeRef.new(shape: UnusedAccessTypeStatistics)
|
1192
|
+
|
1127
1193
|
UnusedAction.add_member(:action, Shapes::ShapeRef.new(shape: String, required: true, location_name: "action"))
|
1128
1194
|
UnusedAction.add_member(:last_accessed, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastAccessed"))
|
1129
1195
|
UnusedAction.struct_class = Types::UnusedAction
|
@@ -1479,6 +1545,19 @@ module Aws::AccessAnalyzer
|
|
1479
1545
|
)
|
1480
1546
|
end)
|
1481
1547
|
|
1548
|
+
api.add_operation(:get_findings_statistics, Seahorse::Model::Operation.new.tap do |o|
|
1549
|
+
o.name = "GetFindingsStatistics"
|
1550
|
+
o.http_method = "POST"
|
1551
|
+
o.http_request_uri = "/analyzer/findings/statistics"
|
1552
|
+
o.input = Shapes::ShapeRef.new(shape: GetFindingsStatisticsRequest)
|
1553
|
+
o.output = Shapes::ShapeRef.new(shape: GetFindingsStatisticsResponse)
|
1554
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
1555
|
+
o.errors << Shapes::ShapeRef.new(shape: ValidationException)
|
1556
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
|
1557
|
+
o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
|
1558
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
1559
|
+
end)
|
1560
|
+
|
1482
1561
|
api.add_operation(:get_generated_policy, Seahorse::Model::Operation.new.tap do |o|
|
1483
1562
|
o.name = "GetGeneratedPolicy"
|
1484
1563
|
o.http_method = "GET"
|
@@ -10,43 +10,39 @@
|
|
10
10
|
module Aws::AccessAnalyzer
|
11
11
|
class EndpointProvider
|
12
12
|
def resolve_endpoint(parameters)
|
13
|
-
|
14
|
-
|
15
|
-
use_fips = parameters.use_fips
|
16
|
-
endpoint = parameters.endpoint
|
17
|
-
if Aws::Endpoints::Matchers.set?(endpoint)
|
18
|
-
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
|
13
|
+
if Aws::Endpoints::Matchers.set?(parameters.endpoint)
|
14
|
+
if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)
|
19
15
|
raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
|
20
16
|
end
|
21
|
-
if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
|
17
|
+
if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
|
22
18
|
raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
|
23
19
|
end
|
24
|
-
return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
|
20
|
+
return Aws::Endpoints::Endpoint.new(url: parameters.endpoint, headers: {}, properties: {})
|
25
21
|
end
|
26
|
-
if Aws::Endpoints::Matchers.set?(region)
|
27
|
-
if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
|
28
|
-
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
|
22
|
+
if Aws::Endpoints::Matchers.set?(parameters.region)
|
23
|
+
if (partition_result = Aws::Endpoints::Matchers.aws_partition(parameters.region))
|
24
|
+
if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
|
29
25
|
if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
|
30
|
-
return Aws::Endpoints::Endpoint.new(url: "https://access-analyzer-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
|
26
|
+
return Aws::Endpoints::Endpoint.new(url: "https://access-analyzer-fips.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
|
31
27
|
end
|
32
28
|
raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
|
33
29
|
end
|
34
|
-
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
|
30
|
+
if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)
|
35
31
|
if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
|
36
32
|
if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-us-gov")
|
37
|
-
return Aws::Endpoints::Endpoint.new(url: "https://access-analyzer.#{region}.amazonaws.com", headers: {}, properties: {})
|
33
|
+
return Aws::Endpoints::Endpoint.new(url: "https://access-analyzer.#{parameters.region}.amazonaws.com", headers: {}, properties: {})
|
38
34
|
end
|
39
|
-
return Aws::Endpoints::Endpoint.new(url: "https://access-analyzer-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
|
35
|
+
return Aws::Endpoints::Endpoint.new(url: "https://access-analyzer-fips.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
|
40
36
|
end
|
41
37
|
raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
|
42
38
|
end
|
43
|
-
if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
|
39
|
+
if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
|
44
40
|
if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
|
45
|
-
return Aws::Endpoints::Endpoint.new(url: "https://access-analyzer.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
|
41
|
+
return Aws::Endpoints::Endpoint.new(url: "https://access-analyzer.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
|
46
42
|
end
|
47
43
|
raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
|
48
44
|
end
|
49
|
-
return Aws::Endpoints::Endpoint.new(url: "https://access-analyzer.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
|
45
|
+
return Aws::Endpoints::Endpoint.new(url: "https://access-analyzer.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
|
50
46
|
end
|
51
47
|
end
|
52
48
|
raise ArgumentError, "Invalid Configuration: Missing Region"
|
@@ -1494,6 +1494,40 @@ module Aws::AccessAnalyzer
|
|
1494
1494
|
include Aws::Structure
|
1495
1495
|
end
|
1496
1496
|
|
1497
|
+
# Provides aggregate statistics about the findings for the specified
|
1498
|
+
# external access analyzer.
|
1499
|
+
#
|
1500
|
+
# @!attribute [rw] resource_type_statistics
|
1501
|
+
# The total number of active cross-account and public findings for
|
1502
|
+
# each resource type of the specified external access analyzer.
|
1503
|
+
# @return [Hash<String,Types::ResourceTypeDetails>]
|
1504
|
+
#
|
1505
|
+
# @!attribute [rw] total_active_findings
|
1506
|
+
# The number of active findings for the specified external access
|
1507
|
+
# analyzer.
|
1508
|
+
# @return [Integer]
|
1509
|
+
#
|
1510
|
+
# @!attribute [rw] total_archived_findings
|
1511
|
+
# The number of archived findings for the specified external access
|
1512
|
+
# analyzer.
|
1513
|
+
# @return [Integer]
|
1514
|
+
#
|
1515
|
+
# @!attribute [rw] total_resolved_findings
|
1516
|
+
# The number of resolved findings for the specified external access
|
1517
|
+
# analyzer.
|
1518
|
+
# @return [Integer]
|
1519
|
+
#
|
1520
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/ExternalAccessFindingsStatistics AWS API Documentation
|
1521
|
+
#
|
1522
|
+
class ExternalAccessFindingsStatistics < Struct.new(
|
1523
|
+
:resource_type_statistics,
|
1524
|
+
:total_active_findings,
|
1525
|
+
:total_archived_findings,
|
1526
|
+
:total_resolved_findings)
|
1527
|
+
SENSITIVE = []
|
1528
|
+
include Aws::Structure
|
1529
|
+
end
|
1530
|
+
|
1497
1531
|
# Contains information about a finding.
|
1498
1532
|
#
|
1499
1533
|
# @!attribute [rw] id
|
@@ -1585,6 +1619,34 @@ module Aws::AccessAnalyzer
|
|
1585
1619
|
include Aws::Structure
|
1586
1620
|
end
|
1587
1621
|
|
1622
|
+
# Contains information about the findings for an Amazon Web Services
|
1623
|
+
# account in an organization unused access analyzer.
|
1624
|
+
#
|
1625
|
+
# @!attribute [rw] account
|
1626
|
+
# The ID of the Amazon Web Services account for which unused access
|
1627
|
+
# finding details are provided.
|
1628
|
+
# @return [String]
|
1629
|
+
#
|
1630
|
+
# @!attribute [rw] number_of_active_findings
|
1631
|
+
# The number of active unused access findings for the specified Amazon
|
1632
|
+
# Web Services account.
|
1633
|
+
# @return [Integer]
|
1634
|
+
#
|
1635
|
+
# @!attribute [rw] details
|
1636
|
+
# Provides the number of active findings for each type of unused
|
1637
|
+
# access for the specified Amazon Web Services account.
|
1638
|
+
# @return [Hash<String,Integer>]
|
1639
|
+
#
|
1640
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/FindingAggregationAccountDetails AWS API Documentation
|
1641
|
+
#
|
1642
|
+
class FindingAggregationAccountDetails < Struct.new(
|
1643
|
+
:account,
|
1644
|
+
:number_of_active_findings,
|
1645
|
+
:details)
|
1646
|
+
SENSITIVE = []
|
1647
|
+
include Aws::Structure
|
1648
|
+
end
|
1649
|
+
|
1588
1650
|
# Contains information about an external access or unused access
|
1589
1651
|
# finding. Only one parameter can be used in a `FindingDetails` object.
|
1590
1652
|
#
|
@@ -1832,6 +1894,35 @@ module Aws::AccessAnalyzer
|
|
1832
1894
|
include Aws::Structure
|
1833
1895
|
end
|
1834
1896
|
|
1897
|
+
# Contains information about the aggregate statistics for an external or
|
1898
|
+
# unused access analyzer. Only one parameter can be used in a
|
1899
|
+
# `FindingsStatistics` object.
|
1900
|
+
#
|
1901
|
+
# @note FindingsStatistics is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of FindingsStatistics corresponding to the set member.
|
1902
|
+
#
|
1903
|
+
# @!attribute [rw] external_access_findings_statistics
|
1904
|
+
# The aggregate statistics for an external access analyzer.
|
1905
|
+
# @return [Types::ExternalAccessFindingsStatistics]
|
1906
|
+
#
|
1907
|
+
# @!attribute [rw] unused_access_findings_statistics
|
1908
|
+
# The aggregate statistics for an unused access analyzer.
|
1909
|
+
# @return [Types::UnusedAccessFindingsStatistics]
|
1910
|
+
#
|
1911
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/FindingsStatistics AWS API Documentation
|
1912
|
+
#
|
1913
|
+
class FindingsStatistics < Struct.new(
|
1914
|
+
:external_access_findings_statistics,
|
1915
|
+
:unused_access_findings_statistics,
|
1916
|
+
:unknown)
|
1917
|
+
SENSITIVE = []
|
1918
|
+
include Aws::Structure
|
1919
|
+
include Aws::Structure::Union
|
1920
|
+
|
1921
|
+
class ExternalAccessFindingsStatistics < FindingsStatistics; end
|
1922
|
+
class UnusedAccessFindingsStatistics < FindingsStatistics; end
|
1923
|
+
class Unknown < FindingsStatistics; end
|
1924
|
+
end
|
1925
|
+
|
1835
1926
|
# @!attribute [rw] analyzer_arn
|
1836
1927
|
# The [ARN of the analyzer][1] used to generate the finding
|
1837
1928
|
# recommendation.
|
@@ -2282,6 +2373,42 @@ module Aws::AccessAnalyzer
|
|
2282
2373
|
include Aws::Structure
|
2283
2374
|
end
|
2284
2375
|
|
2376
|
+
# @!attribute [rw] analyzer_arn
|
2377
|
+
# The [ARN of the analyzer][1] used to generate the statistics.
|
2378
|
+
#
|
2379
|
+
#
|
2380
|
+
#
|
2381
|
+
# [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-getting-started.html#permission-resources
|
2382
|
+
# @return [String]
|
2383
|
+
#
|
2384
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/GetFindingsStatisticsRequest AWS API Documentation
|
2385
|
+
#
|
2386
|
+
class GetFindingsStatisticsRequest < Struct.new(
|
2387
|
+
:analyzer_arn)
|
2388
|
+
SENSITIVE = []
|
2389
|
+
include Aws::Structure
|
2390
|
+
end
|
2391
|
+
|
2392
|
+
# @!attribute [rw] findings_statistics
|
2393
|
+
# A group of external access or unused access findings statistics.
|
2394
|
+
# @return [Array<Types::FindingsStatistics>]
|
2395
|
+
#
|
2396
|
+
# @!attribute [rw] last_updated_at
|
2397
|
+
# The time at which the retrieval of the findings statistics was last
|
2398
|
+
# updated. If the findings statistics have not been previously
|
2399
|
+
# retrieved for the specified analyzer, this field will not be
|
2400
|
+
# populated.
|
2401
|
+
# @return [Time]
|
2402
|
+
#
|
2403
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/GetFindingsStatisticsResponse AWS API Documentation
|
2404
|
+
#
|
2405
|
+
class GetFindingsStatisticsResponse < Struct.new(
|
2406
|
+
:findings_statistics,
|
2407
|
+
:last_updated_at)
|
2408
|
+
SENSITIVE = []
|
2409
|
+
include Aws::Structure
|
2410
|
+
end
|
2411
|
+
|
2285
2412
|
# @!attribute [rw] job_id
|
2286
2413
|
# The `JobId` that is returned by the `StartPolicyGeneration`
|
2287
2414
|
# operation. The `JobId` can be used with `GetGeneratedPolicy` to
|
@@ -3485,6 +3612,28 @@ module Aws::AccessAnalyzer
|
|
3485
3612
|
include Aws::Structure
|
3486
3613
|
end
|
3487
3614
|
|
3615
|
+
# Contains information about the total number of active cross-account
|
3616
|
+
# and public findings for a resource type of an external access
|
3617
|
+
# analyzer.
|
3618
|
+
#
|
3619
|
+
# @!attribute [rw] total_active_public
|
3620
|
+
# The total number of active public findings for the resource type.
|
3621
|
+
# @return [Integer]
|
3622
|
+
#
|
3623
|
+
# @!attribute [rw] total_active_cross_account
|
3624
|
+
# The total number of active cross-account findings for the resource
|
3625
|
+
# type.
|
3626
|
+
# @return [Integer]
|
3627
|
+
#
|
3628
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/ResourceTypeDetails AWS API Documentation
|
3629
|
+
#
|
3630
|
+
class ResourceTypeDetails < Struct.new(
|
3631
|
+
:total_active_public,
|
3632
|
+
:total_active_cross_account)
|
3633
|
+
SENSITIVE = []
|
3634
|
+
include Aws::Structure
|
3635
|
+
end
|
3636
|
+
|
3488
3637
|
# The configuration for an Amazon S3 access point or multi-region access
|
3489
3638
|
# point for the bucket. You can propose up to 10 access points or
|
3490
3639
|
# multi-region access points per bucket. If the proposed Amazon S3
|
@@ -4117,6 +4266,65 @@ module Aws::AccessAnalyzer
|
|
4117
4266
|
include Aws::Structure
|
4118
4267
|
end
|
4119
4268
|
|
4269
|
+
# Provides aggregate statistics about the findings for the specified
|
4270
|
+
# unused access analyzer.
|
4271
|
+
#
|
4272
|
+
# @!attribute [rw] unused_access_type_statistics
|
4273
|
+
# A list of details about the total number of findings for each type
|
4274
|
+
# of unused access for the analyzer.
|
4275
|
+
# @return [Array<Types::UnusedAccessTypeStatistics>]
|
4276
|
+
#
|
4277
|
+
# @!attribute [rw] top_accounts
|
4278
|
+
# A list of one to ten Amazon Web Services accounts that have the most
|
4279
|
+
# active findings for the unused access analyzer.
|
4280
|
+
# @return [Array<Types::FindingAggregationAccountDetails>]
|
4281
|
+
#
|
4282
|
+
# @!attribute [rw] total_active_findings
|
4283
|
+
# The total number of active findings for the unused access analyzer.
|
4284
|
+
# @return [Integer]
|
4285
|
+
#
|
4286
|
+
# @!attribute [rw] total_archived_findings
|
4287
|
+
# The total number of archived findings for the unused access
|
4288
|
+
# analyzer.
|
4289
|
+
# @return [Integer]
|
4290
|
+
#
|
4291
|
+
# @!attribute [rw] total_resolved_findings
|
4292
|
+
# The total number of resolved findings for the unused access
|
4293
|
+
# analyzer.
|
4294
|
+
# @return [Integer]
|
4295
|
+
#
|
4296
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/UnusedAccessFindingsStatistics AWS API Documentation
|
4297
|
+
#
|
4298
|
+
class UnusedAccessFindingsStatistics < Struct.new(
|
4299
|
+
:unused_access_type_statistics,
|
4300
|
+
:top_accounts,
|
4301
|
+
:total_active_findings,
|
4302
|
+
:total_archived_findings,
|
4303
|
+
:total_resolved_findings)
|
4304
|
+
SENSITIVE = []
|
4305
|
+
include Aws::Structure
|
4306
|
+
end
|
4307
|
+
|
4308
|
+
# Contains information about the total number of findings for a type of
|
4309
|
+
# unused access.
|
4310
|
+
#
|
4311
|
+
# @!attribute [rw] unused_access_type
|
4312
|
+
# The type of unused access.
|
4313
|
+
# @return [String]
|
4314
|
+
#
|
4315
|
+
# @!attribute [rw] total
|
4316
|
+
# The total number of findings for the specified unused access type.
|
4317
|
+
# @return [Integer]
|
4318
|
+
#
|
4319
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/UnusedAccessTypeStatistics AWS API Documentation
|
4320
|
+
#
|
4321
|
+
class UnusedAccessTypeStatistics < Struct.new(
|
4322
|
+
:unused_access_type,
|
4323
|
+
:total)
|
4324
|
+
SENSITIVE = []
|
4325
|
+
include Aws::Structure
|
4326
|
+
end
|
4327
|
+
|
4120
4328
|
# Contains information about an unused access finding for an action. IAM
|
4121
4329
|
# Access Analyzer charges for unused access analysis based on the number
|
4122
4330
|
# of IAM roles and users analyzed per month. For more details on
|
data/sig/client.rbs
CHANGED
@@ -414,6 +414,17 @@ module Aws
|
|
414
414
|
) -> _GetFindingV2ResponseSuccess
|
415
415
|
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetFindingV2ResponseSuccess
|
416
416
|
|
417
|
+
interface _GetFindingsStatisticsResponseSuccess
|
418
|
+
include ::Seahorse::Client::_ResponseSuccess[Types::GetFindingsStatisticsResponse]
|
419
|
+
def findings_statistics: () -> ::Array[Types::FindingsStatistics]
|
420
|
+
def last_updated_at: () -> ::Time
|
421
|
+
end
|
422
|
+
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AccessAnalyzer/Client.html#get_findings_statistics-instance_method
|
423
|
+
def get_findings_statistics: (
|
424
|
+
analyzer_arn: ::String
|
425
|
+
) -> _GetFindingsStatisticsResponseSuccess
|
426
|
+
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetFindingsStatisticsResponseSuccess
|
427
|
+
|
417
428
|
interface _GetGeneratedPolicyResponseSuccess
|
418
429
|
include ::Seahorse::Client::_ResponseSuccess[Types::GetGeneratedPolicyResponse]
|
419
430
|
def job_details: () -> Types::JobDetails
|
data/sig/types.rbs
CHANGED
@@ -364,6 +364,14 @@ module Aws::AccessAnalyzer
|
|
364
364
|
SENSITIVE: []
|
365
365
|
end
|
366
366
|
|
367
|
+
class ExternalAccessFindingsStatistics
|
368
|
+
attr_accessor resource_type_statistics: ::Hash[("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket" | "AWS::DynamoDB::Table" | "AWS::DynamoDB::Stream" | "AWS::IAM::User"), Types::ResourceTypeDetails]
|
369
|
+
attr_accessor total_active_findings: ::Integer
|
370
|
+
attr_accessor total_archived_findings: ::Integer
|
371
|
+
attr_accessor total_resolved_findings: ::Integer
|
372
|
+
SENSITIVE: []
|
373
|
+
end
|
374
|
+
|
367
375
|
class Finding
|
368
376
|
attr_accessor id: ::String
|
369
377
|
attr_accessor principal: ::Hash[::String, ::String]
|
@@ -383,6 +391,13 @@ module Aws::AccessAnalyzer
|
|
383
391
|
SENSITIVE: []
|
384
392
|
end
|
385
393
|
|
394
|
+
class FindingAggregationAccountDetails
|
395
|
+
attr_accessor account: ::String
|
396
|
+
attr_accessor number_of_active_findings: ::Integer
|
397
|
+
attr_accessor details: ::Hash[::String, ::Integer]
|
398
|
+
SENSITIVE: []
|
399
|
+
end
|
400
|
+
|
386
401
|
class FindingDetails
|
387
402
|
attr_accessor external_access_details: Types::ExternalAccessDetails
|
388
403
|
attr_accessor unused_permission_details: Types::UnusedPermissionDetails
|
@@ -451,6 +466,20 @@ module Aws::AccessAnalyzer
|
|
451
466
|
SENSITIVE: []
|
452
467
|
end
|
453
468
|
|
469
|
+
class FindingsStatistics
|
470
|
+
attr_accessor external_access_findings_statistics: Types::ExternalAccessFindingsStatistics
|
471
|
+
attr_accessor unused_access_findings_statistics: Types::UnusedAccessFindingsStatistics
|
472
|
+
attr_accessor unknown: untyped
|
473
|
+
SENSITIVE: []
|
474
|
+
|
475
|
+
class ExternalAccessFindingsStatistics < FindingsStatistics
|
476
|
+
end
|
477
|
+
class UnusedAccessFindingsStatistics < FindingsStatistics
|
478
|
+
end
|
479
|
+
class Unknown < FindingsStatistics
|
480
|
+
end
|
481
|
+
end
|
482
|
+
|
454
483
|
class GenerateFindingRecommendationRequest
|
455
484
|
attr_accessor analyzer_arn: ::String
|
456
485
|
attr_accessor id: ::String
|
@@ -573,6 +602,17 @@ module Aws::AccessAnalyzer
|
|
573
602
|
SENSITIVE: []
|
574
603
|
end
|
575
604
|
|
605
|
+
class GetFindingsStatisticsRequest
|
606
|
+
attr_accessor analyzer_arn: ::String
|
607
|
+
SENSITIVE: []
|
608
|
+
end
|
609
|
+
|
610
|
+
class GetFindingsStatisticsResponse
|
611
|
+
attr_accessor findings_statistics: ::Array[Types::FindingsStatistics]
|
612
|
+
attr_accessor last_updated_at: ::Time
|
613
|
+
SENSITIVE: []
|
614
|
+
end
|
615
|
+
|
576
616
|
class GetGeneratedPolicyRequest
|
577
617
|
attr_accessor job_id: ::String
|
578
618
|
attr_accessor include_resource_placeholders: bool
|
@@ -894,6 +934,12 @@ module Aws::AccessAnalyzer
|
|
894
934
|
SENSITIVE: []
|
895
935
|
end
|
896
936
|
|
937
|
+
class ResourceTypeDetails
|
938
|
+
attr_accessor total_active_public: ::Integer
|
939
|
+
attr_accessor total_active_cross_account: ::Integer
|
940
|
+
SENSITIVE: []
|
941
|
+
end
|
942
|
+
|
897
943
|
class S3AccessPointConfiguration
|
898
944
|
attr_accessor access_point_policy: ::String
|
899
945
|
attr_accessor public_access_block: Types::S3PublicAccessBlockConfiguration
|
@@ -1040,6 +1086,21 @@ module Aws::AccessAnalyzer
|
|
1040
1086
|
SENSITIVE: []
|
1041
1087
|
end
|
1042
1088
|
|
1089
|
+
class UnusedAccessFindingsStatistics
|
1090
|
+
attr_accessor unused_access_type_statistics: ::Array[Types::UnusedAccessTypeStatistics]
|
1091
|
+
attr_accessor top_accounts: ::Array[Types::FindingAggregationAccountDetails]
|
1092
|
+
attr_accessor total_active_findings: ::Integer
|
1093
|
+
attr_accessor total_archived_findings: ::Integer
|
1094
|
+
attr_accessor total_resolved_findings: ::Integer
|
1095
|
+
SENSITIVE: []
|
1096
|
+
end
|
1097
|
+
|
1098
|
+
class UnusedAccessTypeStatistics
|
1099
|
+
attr_accessor unused_access_type: ::String
|
1100
|
+
attr_accessor total: ::Integer
|
1101
|
+
SENSITIVE: []
|
1102
|
+
end
|
1103
|
+
|
1043
1104
|
class UnusedAction
|
1044
1105
|
attr_accessor action: ::String
|
1045
1106
|
attr_accessor last_accessed: ::Time
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-accessanalyzer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.68.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Amazon Web Services
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-
|
11
|
+
date: 2025-02-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-core
|