|
3 | 3 | "metadata":{
|
4 | 4 | "apiVersion":"2019-11-01",
|
5 | 5 | "endpointPrefix":"access-analyzer",
|
6 |
| - "jsonVersion":"1.1", |
7 | 6 | "protocol":"rest-json",
|
| 7 | + "protocols":["rest-json"], |
8 | 8 | "serviceFullName":"Access Analyzer",
|
9 | 9 | "serviceId":"AccessAnalyzer",
|
10 | 10 | "signatureVersion":"v4",
|
|
82 | 82 | {"shape":"AccessDeniedException"}
|
83 | 83 | ]
|
84 | 84 | },
|
| 85 | + "CheckNoPublicAccess":{ |
| 86 | + "name":"CheckNoPublicAccess", |
| 87 | + "http":{ |
| 88 | + "method":"POST", |
| 89 | + "requestUri":"/policy/check-no-public-access", |
| 90 | + "responseCode":200 |
| 91 | + }, |
| 92 | + "input":{"shape":"CheckNoPublicAccessRequest"}, |
| 93 | + "output":{"shape":"CheckNoPublicAccessResponse"}, |
| 94 | + "errors":[ |
| 95 | + {"shape":"ValidationException"}, |
| 96 | + {"shape":"InternalServerException"}, |
| 97 | + {"shape":"InvalidParameterException"}, |
| 98 | + {"shape":"UnprocessableEntityException"}, |
| 99 | + {"shape":"ThrottlingException"}, |
| 100 | + {"shape":"AccessDeniedException"} |
| 101 | + ] |
| 102 | + }, |
85 | 103 | "CreateAccessPreview":{
|
86 | 104 | "name":"CreateAccessPreview",
|
87 | 105 | "http":{
|
|
174 | 192 | ],
|
175 | 193 | "idempotent":true
|
176 | 194 | },
|
| 195 | + "GenerateFindingRecommendation":{ |
| 196 | + "name":"GenerateFindingRecommendation", |
| 197 | + "http":{ |
| 198 | + "method":"POST", |
| 199 | + "requestUri":"/recommendation/{id}", |
| 200 | + "responseCode":200 |
| 201 | + }, |
| 202 | + "input":{"shape":"GenerateFindingRecommendationRequest"}, |
| 203 | + "errors":[ |
| 204 | + {"shape":"ValidationException"}, |
| 205 | + {"shape":"InternalServerException"}, |
| 206 | + {"shape":"ThrottlingException"}, |
| 207 | + {"shape":"AccessDeniedException"} |
| 208 | + ] |
| 209 | + }, |
177 | 210 | "GetAccessPreview":{
|
178 | 211 | "name":"GetAccessPreview",
|
179 | 212 | "http":{
|
|
259 | 292 | {"shape":"AccessDeniedException"}
|
260 | 293 | ]
|
261 | 294 | },
|
| 295 | + "GetFindingRecommendation":{ |
| 296 | + "name":"GetFindingRecommendation", |
| 297 | + "http":{ |
| 298 | + "method":"GET", |
| 299 | + "requestUri":"/recommendation/{id}", |
| 300 | + "responseCode":200 |
| 301 | + }, |
| 302 | + "input":{"shape":"GetFindingRecommendationRequest"}, |
| 303 | + "output":{"shape":"GetFindingRecommendationResponse"}, |
| 304 | + "errors":[ |
| 305 | + {"shape":"ResourceNotFoundException"}, |
| 306 | + {"shape":"ValidationException"}, |
| 307 | + {"shape":"InternalServerException"}, |
| 308 | + {"shape":"ThrottlingException"}, |
| 309 | + {"shape":"AccessDeniedException"} |
| 310 | + ] |
| 311 | + }, |
262 | 312 | "GetFindingV2":{
|
263 | 313 | "name":"GetFindingV2",
|
264 | 314 | "http":{
|
|
568 | 618 | "shapes":{
|
569 | 619 | "Access":{
|
570 | 620 | "type":"structure",
|
571 |
| - "required":["actions"], |
572 | 621 | "members":{
|
573 |
| - "actions":{"shape":"AccessActionsList"} |
| 622 | + "actions":{"shape":"AccessActionsList"}, |
| 623 | + "resources":{"shape":"AccessResourcesList"} |
574 | 624 | }
|
575 | 625 | },
|
576 | 626 | "AccessActionsList":{
|
|
590 | 640 | "RESOURCE_POLICY"
|
591 | 641 | ]
|
592 | 642 | },
|
| 643 | + "AccessCheckResourceType":{ |
| 644 | + "type":"string", |
| 645 | + "enum":[ |
| 646 | + "AWS::DynamoDB::Table", |
| 647 | + "AWS::DynamoDB::Stream", |
| 648 | + "AWS::EFS::FileSystem", |
| 649 | + "AWS::OpenSearchService::Domain", |
| 650 | + "AWS::Kinesis::Stream", |
| 651 | + "AWS::Kinesis::StreamConsumer", |
| 652 | + "AWS::KMS::Key", |
| 653 | + "AWS::Lambda::Function", |
| 654 | + "AWS::S3::Bucket", |
| 655 | + "AWS::S3::AccessPoint", |
| 656 | + "AWS::S3Express::DirectoryBucket", |
| 657 | + "AWS::S3::Glacier", |
| 658 | + "AWS::S3Outposts::Bucket", |
| 659 | + "AWS::S3Outposts::AccessPoint", |
| 660 | + "AWS::SecretsManager::Secret", |
| 661 | + "AWS::SNS::Topic", |
| 662 | + "AWS::SQS::Queue", |
| 663 | + "AWS::IAM::AssumeRolePolicyDocument" |
| 664 | + ] |
| 665 | + }, |
593 | 666 | "AccessDeniedException":{
|
594 | 667 | "type":"structure",
|
595 | 668 | "required":["message"],
|
|
704 | 777 | "type":"list",
|
705 | 778 | "member":{"shape":"AccessPreviewSummary"}
|
706 | 779 | },
|
| 780 | + "AccessResourcesList":{ |
| 781 | + "type":"list", |
| 782 | + "member":{"shape":"Resource"}, |
| 783 | + "max":100, |
| 784 | + "min":0 |
| 785 | + }, |
707 | 786 | "AclCanonicalId":{"type":"string"},
|
708 | 787 | "AclGrantee":{
|
709 | 788 | "type":"structure",
|
|
933 | 1012 | "FAIL"
|
934 | 1013 | ]
|
935 | 1014 | },
|
| 1015 | + "CheckNoPublicAccessRequest":{ |
| 1016 | + "type":"structure", |
| 1017 | + "required":[ |
| 1018 | + "policyDocument", |
| 1019 | + "resourceType" |
| 1020 | + ], |
| 1021 | + "members":{ |
| 1022 | + "policyDocument":{"shape":"AccessCheckPolicyDocument"}, |
| 1023 | + "resourceType":{"shape":"AccessCheckResourceType"} |
| 1024 | + } |
| 1025 | + }, |
| 1026 | + "CheckNoPublicAccessResponse":{ |
| 1027 | + "type":"structure", |
| 1028 | + "members":{ |
| 1029 | + "result":{"shape":"CheckNoPublicAccessResult"}, |
| 1030 | + "message":{"shape":"String"}, |
| 1031 | + "reasons":{"shape":"ReasonSummaryList"} |
| 1032 | + } |
| 1033 | + }, |
| 1034 | + "CheckNoPublicAccessResult":{ |
| 1035 | + "type":"string", |
| 1036 | + "enum":[ |
| 1037 | + "PASS", |
| 1038 | + "FAIL" |
| 1039 | + ] |
| 1040 | + }, |
936 | 1041 | "CloudTrailArn":{
|
937 | 1042 | "type":"string",
|
938 | 1043 | "pattern":"arn:[^:]*:cloudtrail:[^:]*:[^:]*:trail/.{1,576}"
|
|
1365 | 1470 | "type":"list",
|
1366 | 1471 | "member":{"shape":"FindingSummaryV2"}
|
1367 | 1472 | },
|
| 1473 | + "GenerateFindingRecommendationRequest":{ |
| 1474 | + "type":"structure", |
| 1475 | + "required":[ |
| 1476 | + "analyzerArn", |
| 1477 | + "id" |
| 1478 | + ], |
| 1479 | + "members":{ |
| 1480 | + "analyzerArn":{ |
| 1481 | + "shape":"AnalyzerArn", |
| 1482 | + "location":"querystring", |
| 1483 | + "locationName":"analyzerArn" |
| 1484 | + }, |
| 1485 | + "id":{ |
| 1486 | + "shape":"GenerateFindingRecommendationRequestIdString", |
| 1487 | + "location":"uri", |
| 1488 | + "locationName":"id" |
| 1489 | + } |
| 1490 | + } |
| 1491 | + }, |
| 1492 | + "GenerateFindingRecommendationRequestIdString":{ |
| 1493 | + "type":"string", |
| 1494 | + "max":2048, |
| 1495 | + "min":1 |
| 1496 | + }, |
1368 | 1497 | "GeneratedPolicy":{
|
1369 | 1498 | "type":"structure",
|
1370 | 1499 | "required":["policy"],
|
|
1488 | 1617 | "archiveRule":{"shape":"ArchiveRuleSummary"}
|
1489 | 1618 | }
|
1490 | 1619 | },
|
| 1620 | + "GetFindingRecommendationRequest":{ |
| 1621 | + "type":"structure", |
| 1622 | + "required":[ |
| 1623 | + "analyzerArn", |
| 1624 | + "id" |
| 1625 | + ], |
| 1626 | + "members":{ |
| 1627 | + "analyzerArn":{ |
| 1628 | + "shape":"AnalyzerArn", |
| 1629 | + "location":"querystring", |
| 1630 | + "locationName":"analyzerArn" |
| 1631 | + }, |
| 1632 | + "id":{ |
| 1633 | + "shape":"GetFindingRecommendationRequestIdString", |
| 1634 | + "location":"uri", |
| 1635 | + "locationName":"id" |
| 1636 | + }, |
| 1637 | + "maxResults":{ |
| 1638 | + "shape":"GetFindingRecommendationRequestMaxResultsInteger", |
| 1639 | + "location":"querystring", |
| 1640 | + "locationName":"maxResults" |
| 1641 | + }, |
| 1642 | + "nextToken":{ |
| 1643 | + "shape":"Token", |
| 1644 | + "location":"querystring", |
| 1645 | + "locationName":"nextToken" |
| 1646 | + } |
| 1647 | + } |
| 1648 | + }, |
| 1649 | + "GetFindingRecommendationRequestIdString":{ |
| 1650 | + "type":"string", |
| 1651 | + "max":2048, |
| 1652 | + "min":1 |
| 1653 | + }, |
| 1654 | + "GetFindingRecommendationRequestMaxResultsInteger":{ |
| 1655 | + "type":"integer", |
| 1656 | + "box":true, |
| 1657 | + "max":1000, |
| 1658 | + "min":1 |
| 1659 | + }, |
| 1660 | + "GetFindingRecommendationResponse":{ |
| 1661 | + "type":"structure", |
| 1662 | + "required":[ |
| 1663 | + "startedAt", |
| 1664 | + "resourceArn", |
| 1665 | + "recommendationType", |
| 1666 | + "status" |
| 1667 | + ], |
| 1668 | + "members":{ |
| 1669 | + "startedAt":{"shape":"Timestamp"}, |
| 1670 | + "completedAt":{"shape":"Timestamp"}, |
| 1671 | + "nextToken":{"shape":"Token"}, |
| 1672 | + "error":{"shape":"RecommendationError"}, |
| 1673 | + "resourceArn":{"shape":"ResourceArn"}, |
| 1674 | + "recommendedSteps":{"shape":"RecommendedStepList"}, |
| 1675 | + "recommendationType":{"shape":"RecommendationType"}, |
| 1676 | + "status":{"shape":"Status"} |
| 1677 | + } |
| 1678 | + }, |
1491 | 1679 | "GetFindingRequest":{
|
1492 | 1680 | "type":"structure",
|
1493 | 1681 | "required":[
|
|
2193 | 2381 | "type":"list",
|
2194 | 2382 | "member":{"shape":"ReasonSummary"}
|
2195 | 2383 | },
|
| 2384 | + "RecommendationError":{ |
| 2385 | + "type":"structure", |
| 2386 | + "required":[ |
| 2387 | + "code", |
| 2388 | + "message" |
| 2389 | + ], |
| 2390 | + "members":{ |
| 2391 | + "code":{"shape":"String"}, |
| 2392 | + "message":{"shape":"String"} |
| 2393 | + } |
| 2394 | + }, |
| 2395 | + "RecommendationType":{ |
| 2396 | + "type":"string", |
| 2397 | + "enum":["UnusedPermissionRecommendation"] |
| 2398 | + }, |
| 2399 | + "RecommendedRemediationAction":{ |
| 2400 | + "type":"string", |
| 2401 | + "enum":[ |
| 2402 | + "CREATE_POLICY", |
| 2403 | + "DETACH_POLICY" |
| 2404 | + ] |
| 2405 | + }, |
| 2406 | + "RecommendedStep":{ |
| 2407 | + "type":"structure", |
| 2408 | + "members":{ |
| 2409 | + "unusedPermissionsRecommendedStep":{"shape":"UnusedPermissionsRecommendedStep"} |
| 2410 | + }, |
| 2411 | + "union":true |
| 2412 | + }, |
| 2413 | + "RecommendedStepList":{ |
| 2414 | + "type":"list", |
| 2415 | + "member":{"shape":"RecommendedStep"} |
| 2416 | + }, |
2196 | 2417 | "RegionList":{
|
2197 | 2418 | "type":"list",
|
2198 | 2419 | "member":{"shape":"String"}
|
2199 | 2420 | },
|
| 2421 | + "Resource":{ |
| 2422 | + "type":"string", |
| 2423 | + "max":2048, |
| 2424 | + "min":0 |
| 2425 | + }, |
2200 | 2426 | "ResourceArn":{
|
2201 | 2427 | "type":"string",
|
2202 | 2428 | "pattern":"arn:[^:]*:[^:]*:[^:]*:[^:]*:.*"
|
|
2399 | 2625 | "resourceOwnerAccount":{"shape":"String"}
|
2400 | 2626 | }
|
2401 | 2627 | },
|
| 2628 | + "Status":{ |
| 2629 | + "type":"string", |
| 2630 | + "enum":[ |
| 2631 | + "SUCCEEDED", |
| 2632 | + "FAILED", |
| 2633 | + "IN_PROGRESS" |
| 2634 | + ] |
| 2635 | + }, |
2402 | 2636 | "StatusReason":{
|
2403 | 2637 | "type":"structure",
|
2404 | 2638 | "required":["code"],
|
|
2589 | 2823 | "lastAccessed":{"shape":"Timestamp"}
|
2590 | 2824 | }
|
2591 | 2825 | },
|
| 2826 | + "UnusedPermissionsRecommendedStep":{ |
| 2827 | + "type":"structure", |
| 2828 | + "required":["recommendedAction"], |
| 2829 | + "members":{ |
| 2830 | + "policyUpdatedAt":{"shape":"Timestamp"}, |
| 2831 | + "recommendedAction":{"shape":"RecommendedRemediationAction"}, |
| 2832 | + "recommendedPolicy":{"shape":"String"}, |
| 2833 | + "existingPolicyId":{"shape":"String"} |
| 2834 | + } |
| 2835 | + }, |
2592 | 2836 | "UpdateArchiveRuleRequest":{
|
2593 | 2837 | "type":"structure",
|
2594 | 2838 | "required":[
|
|
2741 | 2985 | "unknownOperation",
|
2742 | 2986 | "cannotParse",
|
2743 | 2987 | "fieldValidationFailed",
|
2744 |
| - "other" |
| 2988 | + "other", |
| 2989 | + "notSupported" |
2745 | 2990 | ]
|
2746 | 2991 | },
|
2747 | 2992 | "ValueList":{
|
|
0 commit comments