Skip to content

Commit 14029a6

Browse files
This release adds support for just-In-time node access in AWS Systems Manager. Just-in-time node access enables customers to move towards zero standing privileges by requiring operators to request access and obtain approval before remotely connecting to nodes managed by the SSM Agent.
1 parent cd50b1e commit 14029a6

25 files changed

+2931
-6
lines changed

generator/ServiceModels/ssm/ssm-2014-11-06.api.json

Lines changed: 164 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -924,6 +924,22 @@
924924
{"shape":"OpsItemConflictException"}
925925
]
926926
},
927+
"GetAccessToken":{
928+
"name":"GetAccessToken",
929+
"http":{
930+
"method":"POST",
931+
"requestUri":"/"
932+
},
933+
"input":{"shape":"GetAccessTokenRequest"},
934+
"output":{"shape":"GetAccessTokenResponse"},
935+
"errors":[
936+
{"shape":"InternalServerError"},
937+
{"shape":"AccessDeniedException"},
938+
{"shape":"ResourceNotFoundException"},
939+
{"shape":"ThrottlingException"},
940+
{"shape":"ValidationException"}
941+
]
942+
},
927943
"GetAutomationExecution":{
928944
"name":"GetAutomationExecution",
929945
"http":{
@@ -1809,6 +1825,23 @@
18091825
{"shape":"InvalidNotificationConfig"}
18101826
]
18111827
},
1828+
"StartAccessRequest":{
1829+
"name":"StartAccessRequest",
1830+
"http":{
1831+
"method":"POST",
1832+
"requestUri":"/"
1833+
},
1834+
"input":{"shape":"StartAccessRequestRequest"},
1835+
"output":{"shape":"StartAccessRequestResponse"},
1836+
"errors":[
1837+
{"shape":"InternalServerError"},
1838+
{"shape":"AccessDeniedException"},
1839+
{"shape":"ResourceNotFoundException"},
1840+
{"shape":"ServiceQuotaExceededException"},
1841+
{"shape":"ThrottlingException"},
1842+
{"shape":"ValidationException"}
1843+
]
1844+
},
18121845
"StartAssociationsOnce":{
18131846
"name":"StartAssociationsOnce",
18141847
"http":{
@@ -2148,6 +2181,36 @@
21482181
}
21492182
},
21502183
"shapes":{
2184+
"AccessDeniedException":{
2185+
"type":"structure",
2186+
"required":["Message"],
2187+
"members":{
2188+
"Message":{"shape":"String"}
2189+
},
2190+
"exception":true
2191+
},
2192+
"AccessKeyIdType":{
2193+
"type":"string",
2194+
"pattern":"\\w{16,128}"
2195+
},
2196+
"AccessKeySecretType":{
2197+
"type":"string",
2198+
"sensitive":true
2199+
},
2200+
"AccessRequestId":{
2201+
"type":"string",
2202+
"pattern":"^(oi)-[0-9a-f]{12}$"
2203+
},
2204+
"AccessRequestStatus":{
2205+
"type":"string",
2206+
"enum":[
2207+
"Approved",
2208+
"Rejected",
2209+
"Revoked",
2210+
"Expired",
2211+
"Pending"
2212+
]
2213+
},
21512214
"Account":{"type":"string"},
21522215
"AccountId":{
21532216
"type":"string",
@@ -3035,7 +3098,10 @@
30353098
},
30363099
"AutomationSubtype":{
30373100
"type":"string",
3038-
"enum":["ChangeRequest"]
3101+
"enum":[
3102+
"ChangeRequest",
3103+
"AccessRequest"
3104+
]
30393105
},
30403106
"AutomationTargetParameterName":{
30413107
"type":"string",
@@ -3810,6 +3876,21 @@
38103876
}
38113877
},
38123878
"CreatedDate":{"type":"timestamp"},
3879+
"Credentials":{
3880+
"type":"structure",
3881+
"required":[
3882+
"AccessKeyId",
3883+
"SecretAccessKey",
3884+
"SessionToken",
3885+
"ExpirationTime"
3886+
],
3887+
"members":{
3888+
"AccessKeyId":{"shape":"AccessKeyIdType"},
3889+
"SecretAccessKey":{"shape":"AccessKeySecretType"},
3890+
"SessionToken":{"shape":"SessionTokenType"},
3891+
"ExpirationTime":{"shape":"DateTime"}
3892+
}
3893+
},
38133894
"CustomSchemaCountLimitExceededException":{
38143895
"type":"structure",
38153896
"members":{
@@ -5110,7 +5191,9 @@
51105191
"ProblemAnalysisTemplate",
51115192
"CloudFormation",
51125193
"ConformancePackTemplate",
5113-
"QuickSetup"
5194+
"QuickSetup",
5195+
"ManualApprovalPolicy",
5196+
"AutoApprovalPolicy"
51145197
]
51155198
},
51165199
"DocumentVersion":{
@@ -5300,6 +5383,20 @@
53005383
},
53015384
"exception":true
53025385
},
5386+
"GetAccessTokenRequest":{
5387+
"type":"structure",
5388+
"required":["AccessRequestId"],
5389+
"members":{
5390+
"AccessRequestId":{"shape":"AccessRequestId"}
5391+
}
5392+
},
5393+
"GetAccessTokenResponse":{
5394+
"type":"structure",
5395+
"members":{
5396+
"Credentials":{"shape":"Credentials"},
5397+
"AccessRequestStatus":{"shape":"AccessRequestStatus"}
5398+
}
5399+
},
53035400
"GetAutomationExecutionRequest":{
53045401
"type":"structure",
53055402
"required":["AutomationExecutionId"],
@@ -8523,6 +8620,15 @@
85238620
"Category",
85248621
"Severity",
85258622
"OpsItemType",
8623+
"AccessRequestByRequesterArn",
8624+
"AccessRequestByRequesterId",
8625+
"AccessRequestByApproverArn",
8626+
"AccessRequestByApproverId",
8627+
"AccessRequestBySourceAccountId",
8628+
"AccessRequestBySourceOpsItemId",
8629+
"AccessRequestBySourceRegion",
8630+
"AccessRequestByIsReplica",
8631+
"AccessRequestByTargetResourceId",
85268632
"ChangeRequestByRequesterArn",
85278633
"ChangeRequestByRequesterName",
85288634
"ChangeRequestByApproverArn",
@@ -8728,6 +8834,7 @@
87288834
"ChangeCalendarOverrideRejected",
87298835
"PendingApproval",
87308836
"Approved",
8837+
"Revoked",
87318838
"Rejected",
87328839
"Closed"
87338840
]
@@ -10449,6 +10556,22 @@
1044910556
"Command":{"shape":"Command"}
1045010557
}
1045110558
},
10559+
"ServiceQuotaExceededException":{
10560+
"type":"structure",
10561+
"required":[
10562+
"Message",
10563+
"QuotaCode",
10564+
"ServiceCode"
10565+
],
10566+
"members":{
10567+
"Message":{"shape":"String"},
10568+
"ResourceId":{"shape":"String"},
10569+
"ResourceType":{"shape":"String"},
10570+
"QuotaCode":{"shape":"String"},
10571+
"ServiceCode":{"shape":"String"}
10572+
},
10573+
"exception":true
10574+
},
1045210575
"ServiceRole":{"type":"string"},
1045310576
"ServiceSetting":{
1045410577
"type":"structure",
@@ -10616,6 +10739,10 @@
1061610739
"max":400,
1061710740
"min":1
1061810741
},
10742+
"SessionTokenType":{
10743+
"type":"string",
10744+
"sensitive":true
10745+
},
1061910746
"SeveritySummary":{
1062010747
"type":"structure",
1062110748
"members":{
@@ -10639,7 +10766,8 @@
1063910766
"Reject",
1064010767
"StartStep",
1064110768
"StopStep",
10642-
"Resume"
10769+
"Resume",
10770+
"Revoke"
1064310771
]
1064410772
},
1064510773
"SnapshotDownloadUrl":{"type":"string"},
@@ -10671,6 +10799,24 @@
1067110799
"type":"string",
1067210800
"max":24000
1067310801
},
10802+
"StartAccessRequestRequest":{
10803+
"type":"structure",
10804+
"required":[
10805+
"Reason",
10806+
"Targets"
10807+
],
10808+
"members":{
10809+
"Reason":{"shape":"String1to256"},
10810+
"Targets":{"shape":"Targets"},
10811+
"Tags":{"shape":"TagList"}
10812+
}
10813+
},
10814+
"StartAccessRequestResponse":{
10815+
"type":"structure",
10816+
"members":{
10817+
"AccessRequestId":{"shape":"AccessRequestId"}
10818+
}
10819+
},
1067410820
"StartAssociationsOnceRequest":{
1067510821
"type":"structure",
1067610822
"required":["AssociationIds"],
@@ -10921,6 +11067,11 @@
1092111067
},
1092211068
"StreamUrl":{"type":"string"},
1092311069
"String":{"type":"string"},
11070+
"String1to256":{
11071+
"type":"string",
11072+
"max":256,
11073+
"min":1
11074+
},
1092411075
"StringDateTime":{
1092511076
"type":"string",
1092611077
"pattern":"^([\\-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d(?!:))?)?(\\17[0-5]\\d([\\.,]\\d)?)?([zZ]|([\\-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?$"
@@ -11107,6 +11258,16 @@
1110711258
"SessionId":{"shape":"SessionId"}
1110811259
}
1110911260
},
11261+
"ThrottlingException":{
11262+
"type":"structure",
11263+
"required":["Message"],
11264+
"members":{
11265+
"Message":{"shape":"String"},
11266+
"QuotaCode":{"shape":"String"},
11267+
"ServiceCode":{"shape":"String"}
11268+
},
11269+
"exception":true
11270+
},
1111011271
"TimeoutSeconds":{
1111111272
"type":"integer",
1111211273
"max":2592000,

0 commit comments

Comments
 (0)