@aws-sdk/client-rolesanywhere 3.329.0 → 3.333.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.
Files changed (45) hide show
  1. package/README.md +30 -3
  2. package/dist-cjs/RolesAnywhere.js +4 -0
  3. package/dist-cjs/commands/PutNotificationSettingsCommand.js +45 -0
  4. package/dist-cjs/commands/ResetNotificationSettingsCommand.js +45 -0
  5. package/dist-cjs/commands/index.js +2 -0
  6. package/dist-cjs/endpoint/ruleset.js +3 -3
  7. package/dist-cjs/models/models_0.js +8 -1
  8. package/dist-cjs/protocols/Aws_restJson1.js +128 -2
  9. package/dist-es/RolesAnywhere.js +4 -0
  10. package/dist-es/commands/PutNotificationSettingsCommand.js +41 -0
  11. package/dist-es/commands/ResetNotificationSettingsCommand.js +41 -0
  12. package/dist-es/commands/index.js +2 -0
  13. package/dist-es/endpoint/ruleset.js +3 -3
  14. package/dist-es/models/models_0.js +7 -0
  15. package/dist-es/protocols/Aws_restJson1.js +122 -0
  16. package/dist-types/RolesAnywhere.d.ts +29 -4
  17. package/dist-types/RolesAnywhereClient.d.ts +19 -6
  18. package/dist-types/commands/CreateProfileCommand.d.ts +1 -1
  19. package/dist-types/commands/CreateTrustAnchorCommand.d.ts +20 -1
  20. package/dist-types/commands/DeleteTrustAnchorCommand.d.ts +9 -0
  21. package/dist-types/commands/DisableProfileCommand.d.ts +1 -1
  22. package/dist-types/commands/DisableTrustAnchorCommand.d.ts +10 -1
  23. package/dist-types/commands/EnableProfileCommand.d.ts +1 -1
  24. package/dist-types/commands/EnableTrustAnchorCommand.d.ts +9 -0
  25. package/dist-types/commands/GetSubjectCommand.d.ts +4 -1
  26. package/dist-types/commands/GetTrustAnchorCommand.d.ts +9 -0
  27. package/dist-types/commands/ImportCrlCommand.d.ts +3 -1
  28. package/dist-types/commands/ListCrlsCommand.d.ts +1 -1
  29. package/dist-types/commands/ListTrustAnchorsCommand.d.ts +9 -0
  30. package/dist-types/commands/PutNotificationSettingsCommand.d.ts +115 -0
  31. package/dist-types/commands/ResetNotificationSettingsCommand.d.ts +112 -0
  32. package/dist-types/commands/UpdateCrlCommand.d.ts +3 -1
  33. package/dist-types/commands/UpdateProfileCommand.d.ts +3 -1
  34. package/dist-types/commands/UpdateTrustAnchorCommand.d.ts +15 -1
  35. package/dist-types/commands/index.d.ts +2 -0
  36. package/dist-types/models/models_0.d.ts +185 -24
  37. package/dist-types/protocols/Aws_restJson1.d.ts +18 -0
  38. package/dist-types/ts3.4/RolesAnywhere.d.ts +34 -0
  39. package/dist-types/ts3.4/RolesAnywhereClient.d.ts +12 -0
  40. package/dist-types/ts3.4/commands/PutNotificationSettingsCommand.d.ts +41 -0
  41. package/dist-types/ts3.4/commands/ResetNotificationSettingsCommand.d.ts +41 -0
  42. package/dist-types/ts3.4/commands/index.d.ts +2 -0
  43. package/dist-types/ts3.4/models/models_0.d.ts +44 -0
  44. package/dist-types/ts3.4/protocols/Aws_restJson1.d.ts +24 -0
  45. package/package.json +5 -5
@@ -39,6 +39,7 @@ export const se_CreateTrustAnchorCommand = async (input, context) => {
39
39
  body = JSON.stringify(take(input, {
40
40
  enabled: [],
41
41
  name: [],
42
+ notificationSettings: (_) => _json(_),
42
43
  source: (_) => _json(_),
43
44
  tags: (_) => _json(_),
44
45
  }));
@@ -383,6 +384,48 @@ export const se_ListTrustAnchorsCommand = async (input, context) => {
383
384
  body,
384
385
  });
385
386
  };
387
+ export const se_PutNotificationSettingsCommand = async (input, context) => {
388
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
389
+ const headers = {
390
+ "content-type": "application/json",
391
+ };
392
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/put-notifications-settings";
393
+ let body;
394
+ body = JSON.stringify(take(input, {
395
+ notificationSettings: (_) => _json(_),
396
+ trustAnchorId: [],
397
+ }));
398
+ return new __HttpRequest({
399
+ protocol,
400
+ hostname,
401
+ port,
402
+ method: "PATCH",
403
+ headers,
404
+ path: resolvedPath,
405
+ body,
406
+ });
407
+ };
408
+ export const se_ResetNotificationSettingsCommand = async (input, context) => {
409
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
410
+ const headers = {
411
+ "content-type": "application/json",
412
+ };
413
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/reset-notifications-settings";
414
+ let body;
415
+ body = JSON.stringify(take(input, {
416
+ notificationSettingKeys: (_) => _json(_),
417
+ trustAnchorId: [],
418
+ }));
419
+ return new __HttpRequest({
420
+ protocol,
421
+ hostname,
422
+ port,
423
+ method: "PATCH",
424
+ headers,
425
+ path: resolvedPath,
426
+ body,
427
+ });
428
+ };
386
429
  export const se_TagResourceCommand = async (input, context) => {
387
430
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
388
431
  const headers = {
@@ -1257,6 +1300,84 @@ const de_ListTrustAnchorsCommandError = async (output, context) => {
1257
1300
  });
1258
1301
  }
1259
1302
  };
1303
+ export const de_PutNotificationSettingsCommand = async (output, context) => {
1304
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
1305
+ return de_PutNotificationSettingsCommandError(output, context);
1306
+ }
1307
+ const contents = map({
1308
+ $metadata: deserializeMetadata(output),
1309
+ });
1310
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1311
+ const doc = take(data, {
1312
+ trustAnchor: (_) => de_TrustAnchorDetail(_, context),
1313
+ });
1314
+ Object.assign(contents, doc);
1315
+ return contents;
1316
+ };
1317
+ const de_PutNotificationSettingsCommandError = async (output, context) => {
1318
+ const parsedOutput = {
1319
+ ...output,
1320
+ body: await parseErrorBody(output.body, context),
1321
+ };
1322
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1323
+ switch (errorCode) {
1324
+ case "AccessDeniedException":
1325
+ case "com.amazonaws.rolesanywhere#AccessDeniedException":
1326
+ throw await de_AccessDeniedExceptionRes(parsedOutput, context);
1327
+ case "ResourceNotFoundException":
1328
+ case "com.amazonaws.rolesanywhere#ResourceNotFoundException":
1329
+ throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
1330
+ case "ValidationException":
1331
+ case "com.amazonaws.rolesanywhere#ValidationException":
1332
+ throw await de_ValidationExceptionRes(parsedOutput, context);
1333
+ default:
1334
+ const parsedBody = parsedOutput.body;
1335
+ return throwDefaultError({
1336
+ output,
1337
+ parsedBody,
1338
+ errorCode,
1339
+ });
1340
+ }
1341
+ };
1342
+ export const de_ResetNotificationSettingsCommand = async (output, context) => {
1343
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
1344
+ return de_ResetNotificationSettingsCommandError(output, context);
1345
+ }
1346
+ const contents = map({
1347
+ $metadata: deserializeMetadata(output),
1348
+ });
1349
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
1350
+ const doc = take(data, {
1351
+ trustAnchor: (_) => de_TrustAnchorDetail(_, context),
1352
+ });
1353
+ Object.assign(contents, doc);
1354
+ return contents;
1355
+ };
1356
+ const de_ResetNotificationSettingsCommandError = async (output, context) => {
1357
+ const parsedOutput = {
1358
+ ...output,
1359
+ body: await parseErrorBody(output.body, context),
1360
+ };
1361
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
1362
+ switch (errorCode) {
1363
+ case "AccessDeniedException":
1364
+ case "com.amazonaws.rolesanywhere#AccessDeniedException":
1365
+ throw await de_AccessDeniedExceptionRes(parsedOutput, context);
1366
+ case "ResourceNotFoundException":
1367
+ case "com.amazonaws.rolesanywhere#ResourceNotFoundException":
1368
+ throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
1369
+ case "ValidationException":
1370
+ case "com.amazonaws.rolesanywhere#ValidationException":
1371
+ throw await de_ValidationExceptionRes(parsedOutput, context);
1372
+ default:
1373
+ const parsedBody = parsedOutput.body;
1374
+ return throwDefaultError({
1375
+ output,
1376
+ parsedBody,
1377
+ errorCode,
1378
+ });
1379
+ }
1380
+ };
1260
1381
  export const de_TagResourceCommand = async (output, context) => {
1261
1382
  if (output.statusCode !== 201 && output.statusCode >= 300) {
1262
1383
  return de_TagResourceCommandError(output, context);
@@ -1614,6 +1735,7 @@ const de_TrustAnchorDetail = (output, context) => {
1614
1735
  createdAt: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)),
1615
1736
  enabled: __expectBoolean,
1616
1737
  name: __expectString,
1738
+ notificationSettings: _json,
1617
1739
  source: _json,
1618
1740
  trustAnchorArn: __expectString,
1619
1741
  trustAnchorId: __expectString,
@@ -20,6 +20,8 @@ import { ListProfilesCommandInput, ListProfilesCommandOutput } from "./commands/
20
20
  import { ListSubjectsCommandInput, ListSubjectsCommandOutput } from "./commands/ListSubjectsCommand";
21
21
  import { ListTagsForResourceCommandInput, ListTagsForResourceCommandOutput } from "./commands/ListTagsForResourceCommand";
22
22
  import { ListTrustAnchorsCommandInput, ListTrustAnchorsCommandOutput } from "./commands/ListTrustAnchorsCommand";
23
+ import { PutNotificationSettingsCommandInput, PutNotificationSettingsCommandOutput } from "./commands/PutNotificationSettingsCommand";
24
+ import { ResetNotificationSettingsCommandInput, ResetNotificationSettingsCommandOutput } from "./commands/ResetNotificationSettingsCommand";
23
25
  import { TagResourceCommandInput, TagResourceCommandOutput } from "./commands/TagResourceCommand";
24
26
  import { UntagResourceCommandInput, UntagResourceCommandOutput } from "./commands/UntagResourceCommand";
25
27
  import { UpdateCrlCommandInput, UpdateCrlCommandOutput } from "./commands/UpdateCrlCommand";
@@ -153,6 +155,18 @@ export interface RolesAnywhere {
153
155
  listTrustAnchors(args: ListTrustAnchorsCommandInput, options?: __HttpHandlerOptions): Promise<ListTrustAnchorsCommandOutput>;
154
156
  listTrustAnchors(args: ListTrustAnchorsCommandInput, cb: (err: any, data?: ListTrustAnchorsCommandOutput) => void): void;
155
157
  listTrustAnchors(args: ListTrustAnchorsCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: ListTrustAnchorsCommandOutput) => void): void;
158
+ /**
159
+ * @see {@link PutNotificationSettingsCommand}
160
+ */
161
+ putNotificationSettings(args: PutNotificationSettingsCommandInput, options?: __HttpHandlerOptions): Promise<PutNotificationSettingsCommandOutput>;
162
+ putNotificationSettings(args: PutNotificationSettingsCommandInput, cb: (err: any, data?: PutNotificationSettingsCommandOutput) => void): void;
163
+ putNotificationSettings(args: PutNotificationSettingsCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: PutNotificationSettingsCommandOutput) => void): void;
164
+ /**
165
+ * @see {@link ResetNotificationSettingsCommand}
166
+ */
167
+ resetNotificationSettings(args: ResetNotificationSettingsCommandInput, options?: __HttpHandlerOptions): Promise<ResetNotificationSettingsCommandOutput>;
168
+ resetNotificationSettings(args: ResetNotificationSettingsCommandInput, cb: (err: any, data?: ResetNotificationSettingsCommandOutput) => void): void;
169
+ resetNotificationSettings(args: ResetNotificationSettingsCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: ResetNotificationSettingsCommandOutput) => void): void;
156
170
  /**
157
171
  * @see {@link TagResourceCommand}
158
172
  */
@@ -186,10 +200,21 @@ export interface RolesAnywhere {
186
200
  }
187
201
  /**
188
202
  * @public
189
- * <p>AWS Identity and Access Management Roles Anywhere provides a secure way for your workloads such as servers, containers, and applications running outside of AWS to obtain Temporary AWS credentials. Your workloads can use the same IAM policies and roles that you have configured with native AWS applications to access AWS resources. Using IAM Roles Anywhere will eliminate the need to manage long term credentials for workloads running outside of AWS.</p>
190
- * <p>To use IAM Roles Anywhere customer workloads will need to use X.509 certificates issued by their Certificate Authority (CA) . The Certificate Authority (CA) needs to be registered with IAM Roles Anywhere as a trust anchor to establish trust between customer PKI and IAM Roles Anywhere. Customers who do not manage their own PKI system can use AWS Certificate Manager Private Certificate Authority (ACM PCA) to create a Certificate Authority and use that to establish trust with IAM Roles Anywhere</p>
191
- * <p>This guide describes the IAM rolesanywhere operations that you can call programmatically. For general information about IAM Roles Anywhere see <a href="https://docs.aws.amazon.com/">https://docs.aws.amazon.com/</a>
192
- * </p>
203
+ * <p>Identity and Access Management Roles Anywhere provides a secure way for your workloads such as
204
+ * servers, containers, and applications that run outside of Amazon Web Services to obtain
205
+ * temporary Amazon Web Services credentials. Your workloads can use the same IAM policies and roles you have for native Amazon Web Services applications to access Amazon Web Services resources. Using IAM Roles Anywhere eliminates the need to
206
+ * manage long-term credentials for workloads running outside of Amazon Web Services.</p>
207
+ * <p>
208
+ * To use IAM Roles Anywhere, your workloads must use X.509 certificates
209
+ * issued by their certificate authority (CA). You register the CA with IAM
210
+ * Roles Anywhere as a trust anchor to establish trust between your public key infrastructure
211
+ * (PKI) and IAM Roles Anywhere. If you don't manage your own PKI system, you
212
+ * can use Private Certificate Authority to create a CA and then use that to establish trust with
213
+ * IAM Roles Anywhere.
214
+ * </p>
215
+ * <p>This guide describes the IAM Roles Anywhere operations that you can call
216
+ * programmatically. For more information about IAM Roles Anywhere, see the
217
+ * <a href="https://docs.aws.amazon.com/rolesanywhere/latest/userguide/introduction.html">IAM Roles Anywhere User Guide</a>.</p>
193
218
  */
194
219
  export declare class RolesAnywhere extends RolesAnywhereClient implements RolesAnywhere {
195
220
  }
@@ -28,6 +28,8 @@ import { ListProfilesCommandInput, ListProfilesCommandOutput } from "./commands/
28
28
  import { ListSubjectsCommandInput, ListSubjectsCommandOutput } from "./commands/ListSubjectsCommand";
29
29
  import { ListTagsForResourceCommandInput, ListTagsForResourceCommandOutput } from "./commands/ListTagsForResourceCommand";
30
30
  import { ListTrustAnchorsCommandInput, ListTrustAnchorsCommandOutput } from "./commands/ListTrustAnchorsCommand";
31
+ import { PutNotificationSettingsCommandInput, PutNotificationSettingsCommandOutput } from "./commands/PutNotificationSettingsCommand";
32
+ import { ResetNotificationSettingsCommandInput, ResetNotificationSettingsCommandOutput } from "./commands/ResetNotificationSettingsCommand";
31
33
  import { TagResourceCommandInput, TagResourceCommandOutput } from "./commands/TagResourceCommand";
32
34
  import { UntagResourceCommandInput, UntagResourceCommandOutput } from "./commands/UntagResourceCommand";
33
35
  import { UpdateCrlCommandInput, UpdateCrlCommandOutput } from "./commands/UpdateCrlCommand";
@@ -37,11 +39,11 @@ import { ClientInputEndpointParameters, ClientResolvedEndpointParameters, Endpoi
37
39
  /**
38
40
  * @public
39
41
  */
40
- export type ServiceInputTypes = CreateProfileCommandInput | CreateTrustAnchorCommandInput | DeleteCrlCommandInput | DeleteProfileCommandInput | DeleteTrustAnchorCommandInput | DisableCrlCommandInput | DisableProfileCommandInput | DisableTrustAnchorCommandInput | EnableCrlCommandInput | EnableProfileCommandInput | EnableTrustAnchorCommandInput | GetCrlCommandInput | GetProfileCommandInput | GetSubjectCommandInput | GetTrustAnchorCommandInput | ImportCrlCommandInput | ListCrlsCommandInput | ListProfilesCommandInput | ListSubjectsCommandInput | ListTagsForResourceCommandInput | ListTrustAnchorsCommandInput | TagResourceCommandInput | UntagResourceCommandInput | UpdateCrlCommandInput | UpdateProfileCommandInput | UpdateTrustAnchorCommandInput;
42
+ export type ServiceInputTypes = CreateProfileCommandInput | CreateTrustAnchorCommandInput | DeleteCrlCommandInput | DeleteProfileCommandInput | DeleteTrustAnchorCommandInput | DisableCrlCommandInput | DisableProfileCommandInput | DisableTrustAnchorCommandInput | EnableCrlCommandInput | EnableProfileCommandInput | EnableTrustAnchorCommandInput | GetCrlCommandInput | GetProfileCommandInput | GetSubjectCommandInput | GetTrustAnchorCommandInput | ImportCrlCommandInput | ListCrlsCommandInput | ListProfilesCommandInput | ListSubjectsCommandInput | ListTagsForResourceCommandInput | ListTrustAnchorsCommandInput | PutNotificationSettingsCommandInput | ResetNotificationSettingsCommandInput | TagResourceCommandInput | UntagResourceCommandInput | UpdateCrlCommandInput | UpdateProfileCommandInput | UpdateTrustAnchorCommandInput;
41
43
  /**
42
44
  * @public
43
45
  */
44
- export type ServiceOutputTypes = CreateProfileCommandOutput | CreateTrustAnchorCommandOutput | DeleteCrlCommandOutput | DeleteProfileCommandOutput | DeleteTrustAnchorCommandOutput | DisableCrlCommandOutput | DisableProfileCommandOutput | DisableTrustAnchorCommandOutput | EnableCrlCommandOutput | EnableProfileCommandOutput | EnableTrustAnchorCommandOutput | GetCrlCommandOutput | GetProfileCommandOutput | GetSubjectCommandOutput | GetTrustAnchorCommandOutput | ImportCrlCommandOutput | ListCrlsCommandOutput | ListProfilesCommandOutput | ListSubjectsCommandOutput | ListTagsForResourceCommandOutput | ListTrustAnchorsCommandOutput | TagResourceCommandOutput | UntagResourceCommandOutput | UpdateCrlCommandOutput | UpdateProfileCommandOutput | UpdateTrustAnchorCommandOutput;
46
+ export type ServiceOutputTypes = CreateProfileCommandOutput | CreateTrustAnchorCommandOutput | DeleteCrlCommandOutput | DeleteProfileCommandOutput | DeleteTrustAnchorCommandOutput | DisableCrlCommandOutput | DisableProfileCommandOutput | DisableTrustAnchorCommandOutput | EnableCrlCommandOutput | EnableProfileCommandOutput | EnableTrustAnchorCommandOutput | GetCrlCommandOutput | GetProfileCommandOutput | GetSubjectCommandOutput | GetTrustAnchorCommandOutput | ImportCrlCommandOutput | ListCrlsCommandOutput | ListProfilesCommandOutput | ListSubjectsCommandOutput | ListTagsForResourceCommandOutput | ListTrustAnchorsCommandOutput | PutNotificationSettingsCommandOutput | ResetNotificationSettingsCommandOutput | TagResourceCommandOutput | UntagResourceCommandOutput | UpdateCrlCommandOutput | UpdateProfileCommandOutput | UpdateTrustAnchorCommandOutput;
45
47
  /**
46
48
  * @public
47
49
  */
@@ -169,10 +171,21 @@ export interface RolesAnywhereClientResolvedConfig extends RolesAnywhereClientRe
169
171
  }
170
172
  /**
171
173
  * @public
172
- * <p>AWS Identity and Access Management Roles Anywhere provides a secure way for your workloads such as servers, containers, and applications running outside of AWS to obtain Temporary AWS credentials. Your workloads can use the same IAM policies and roles that you have configured with native AWS applications to access AWS resources. Using IAM Roles Anywhere will eliminate the need to manage long term credentials for workloads running outside of AWS.</p>
173
- * <p>To use IAM Roles Anywhere customer workloads will need to use X.509 certificates issued by their Certificate Authority (CA) . The Certificate Authority (CA) needs to be registered with IAM Roles Anywhere as a trust anchor to establish trust between customer PKI and IAM Roles Anywhere. Customers who do not manage their own PKI system can use AWS Certificate Manager Private Certificate Authority (ACM PCA) to create a Certificate Authority and use that to establish trust with IAM Roles Anywhere</p>
174
- * <p>This guide describes the IAM rolesanywhere operations that you can call programmatically. For general information about IAM Roles Anywhere see <a href="https://docs.aws.amazon.com/">https://docs.aws.amazon.com/</a>
175
- * </p>
174
+ * <p>Identity and Access Management Roles Anywhere provides a secure way for your workloads such as
175
+ * servers, containers, and applications that run outside of Amazon Web Services to obtain
176
+ * temporary Amazon Web Services credentials. Your workloads can use the same IAM policies and roles you have for native Amazon Web Services applications to access Amazon Web Services resources. Using IAM Roles Anywhere eliminates the need to
177
+ * manage long-term credentials for workloads running outside of Amazon Web Services.</p>
178
+ * <p>
179
+ * To use IAM Roles Anywhere, your workloads must use X.509 certificates
180
+ * issued by their certificate authority (CA). You register the CA with IAM
181
+ * Roles Anywhere as a trust anchor to establish trust between your public key infrastructure
182
+ * (PKI) and IAM Roles Anywhere. If you don't manage your own PKI system, you
183
+ * can use Private Certificate Authority to create a CA and then use that to establish trust with
184
+ * IAM Roles Anywhere.
185
+ * </p>
186
+ * <p>This guide describes the IAM Roles Anywhere operations that you can call
187
+ * programmatically. For more information about IAM Roles Anywhere, see the
188
+ * <a href="https://docs.aws.amazon.com/rolesanywhere/latest/userguide/introduction.html">IAM Roles Anywhere User Guide</a>.</p>
176
189
  */
177
190
  export declare class RolesAnywhereClient extends __Client<__HttpHandlerOptions, ServiceInputTypes, ServiceOutputTypes, RolesAnywhereClientResolvedConfig> {
178
191
  /**
@@ -19,7 +19,7 @@ export interface CreateProfileCommandOutput extends ProfileDetailResponse, __Met
19
19
  }
20
20
  /**
21
21
  * @public
22
- * <p>Creates a profile. A profile is configuration resource to list the roles that RolesAnywhere service is trusted to assume. In addition, by applying a profile you can intersect permissions with IAM managed policies.</p>
22
+ * <p>Creates a <i>profile</i>, a list of the roles that Roles Anywhere service is trusted to assume. You use profiles to intersect permissions with IAM managed policies.</p>
23
23
  * <p>
24
24
  * <b>Required permissions: </b>
25
25
  * <code>rolesanywhere:CreateProfile</code>.
@@ -19,7 +19,9 @@ export interface CreateTrustAnchorCommandOutput extends TrustAnchorDetailRespons
19
19
  }
20
20
  /**
21
21
  * @public
22
- * <p>Creates a trust anchor. You establish trust between IAM Roles Anywhere and your certificate authority (CA) by configuring a trust anchor. A Trust Anchor is defined either as a reference to a AWS Certificate Manager Private Certificate Authority (ACM PCA), or by uploading a Certificate Authority (CA) certificate. Your AWS workloads can authenticate with the trust anchor using certificates issued by the trusted Certificate Authority (CA) in exchange for temporary AWS credentials.</p>
22
+ * <p>Creates a trust anchor to establish trust between IAM Roles Anywhere and
23
+ * your certificate authority (CA). You can define a trust anchor as a reference to an Private Certificate Authority (Private CA) or by uploading a CA certificate. Your Amazon Web Services workloads can authenticate with the trust anchor using certificates issued by
24
+ * the CA in exchange for temporary Amazon Web Services credentials.</p>
23
25
  * <p>
24
26
  * <b>Required permissions: </b>
25
27
  * <code>rolesanywhere:CreateTrustAnchor</code>.
@@ -46,6 +48,14 @@ export interface CreateTrustAnchorCommandOutput extends TrustAnchorDetailRespons
46
48
  * value: "STRING_VALUE", // required
47
49
  * },
48
50
  * ],
51
+ * notificationSettings: [ // NotificationSettings
52
+ * { // NotificationSetting
53
+ * enabled: true || false, // required
54
+ * event: "STRING_VALUE", // required
55
+ * threshold: Number("int"),
56
+ * channel: "STRING_VALUE",
57
+ * },
58
+ * ],
49
59
  * };
50
60
  * const command = new CreateTrustAnchorCommand(input);
51
61
  * const response = await client.send(command);
@@ -64,6 +74,15 @@ export interface CreateTrustAnchorCommandOutput extends TrustAnchorDetailRespons
64
74
  * // enabled: true || false,
65
75
  * // createdAt: new Date("TIMESTAMP"),
66
76
  * // updatedAt: new Date("TIMESTAMP"),
77
+ * // notificationSettings: [ // NotificationSettingDetails
78
+ * // { // NotificationSettingDetail
79
+ * // enabled: true || false, // required
80
+ * // event: "STRING_VALUE", // required
81
+ * // threshold: Number("int"),
82
+ * // channel: "STRING_VALUE",
83
+ * // configuredBy: "STRING_VALUE",
84
+ * // },
85
+ * // ],
67
86
  * // },
68
87
  * // };
69
88
  *
@@ -50,6 +50,15 @@ export interface DeleteTrustAnchorCommandOutput extends TrustAnchorDetailRespons
50
50
  * // enabled: true || false,
51
51
  * // createdAt: new Date("TIMESTAMP"),
52
52
  * // updatedAt: new Date("TIMESTAMP"),
53
+ * // notificationSettings: [ // NotificationSettingDetails
54
+ * // { // NotificationSettingDetail
55
+ * // enabled: true || false, // required
56
+ * // event: "STRING_VALUE", // required
57
+ * // threshold: Number("int"),
58
+ * // channel: "STRING_VALUE",
59
+ * // configuredBy: "STRING_VALUE",
60
+ * // },
61
+ * // ],
53
62
  * // },
54
63
  * // };
55
64
  *
@@ -19,7 +19,7 @@ export interface DisableProfileCommandOutput extends ProfileDetailResponse, __Me
19
19
  }
20
20
  /**
21
21
  * @public
22
- * <p>Disables a profile. When disabled, <a href="https://docs.aws.amazon.com/rolesanywhere/latest/APIReference/API_CreateSession.html">CreateSession</a> requests with this profile fail.</p>
22
+ * <p>Disables a profile. When disabled, temporary credential requests with this profile fail.</p>
23
23
  * <p>
24
24
  * <b>Required permissions: </b>
25
25
  * <code>rolesanywhere:DisableProfile</code>.
@@ -19,7 +19,7 @@ export interface DisableTrustAnchorCommandOutput extends TrustAnchorDetailRespon
19
19
  }
20
20
  /**
21
21
  * @public
22
- * <p>Disables a trust anchor. When disabled, <a href="https://docs.aws.amazon.com/rolesanywhere/latest/APIReference/API_CreateSession.html">CreateSession</a> requests specifying this trust anchor are unauthorized.</p>
22
+ * <p>Disables a trust anchor. When disabled, temporary credential requests specifying this trust anchor are unauthorized.</p>
23
23
  * <p>
24
24
  * <b>Required permissions: </b>
25
25
  * <code>rolesanywhere:DisableTrustAnchor</code>.
@@ -50,6 +50,15 @@ export interface DisableTrustAnchorCommandOutput extends TrustAnchorDetailRespon
50
50
  * // enabled: true || false,
51
51
  * // createdAt: new Date("TIMESTAMP"),
52
52
  * // updatedAt: new Date("TIMESTAMP"),
53
+ * // notificationSettings: [ // NotificationSettingDetails
54
+ * // { // NotificationSettingDetail
55
+ * // enabled: true || false, // required
56
+ * // event: "STRING_VALUE", // required
57
+ * // threshold: Number("int"),
58
+ * // channel: "STRING_VALUE",
59
+ * // configuredBy: "STRING_VALUE",
60
+ * // },
61
+ * // ],
53
62
  * // },
54
63
  * // };
55
64
  *
@@ -19,7 +19,7 @@ export interface EnableProfileCommandOutput extends ProfileDetailResponse, __Met
19
19
  }
20
20
  /**
21
21
  * @public
22
- * <p>Enables the roles in a profile to receive session credentials in <a href="https://docs.aws.amazon.com/rolesanywhere/latest/APIReference/API_CreateSession.html">CreateSession</a>. </p>
22
+ * <p>Enables temporary credential requests for a profile. </p>
23
23
  * <p>
24
24
  * <b>Required permissions: </b>
25
25
  * <code>rolesanywhere:EnableProfile</code>.
@@ -50,6 +50,15 @@ export interface EnableTrustAnchorCommandOutput extends TrustAnchorDetailRespons
50
50
  * // enabled: true || false,
51
51
  * // createdAt: new Date("TIMESTAMP"),
52
52
  * // updatedAt: new Date("TIMESTAMP"),
53
+ * // notificationSettings: [ // NotificationSettingDetails
54
+ * // { // NotificationSettingDetail
55
+ * // enabled: true || false, // required
56
+ * // event: "STRING_VALUE", // required
57
+ * // threshold: Number("int"),
58
+ * // channel: "STRING_VALUE",
59
+ * // configuredBy: "STRING_VALUE",
60
+ * // },
61
+ * // ],
53
62
  * // },
54
63
  * // };
55
64
  *
@@ -19,7 +19,10 @@ export interface GetSubjectCommandOutput extends SubjectDetailResponse, __Metada
19
19
  }
20
20
  /**
21
21
  * @public
22
- * <p>Gets a Subject. A Subject associates a certificate identity with authentication attempts by CreateSession. The Subject resources stores audit information such as status of the last authentication attempt, the certificate data used in the attempt, and the last time the associated identity attempted authentication. </p>
22
+ * <p>Gets a <i>subject</i>, which associates a certificate identity with
23
+ * authentication attempts. The subject stores auditing information such as the status
24
+ * of the last authentication attempt, the certificate data used in the attempt, and the
25
+ * last time the associated identity attempted authentication. </p>
23
26
  * <p>
24
27
  * <b>Required permissions: </b>
25
28
  * <code>rolesanywhere:GetSubject</code>.
@@ -50,6 +50,15 @@ export interface GetTrustAnchorCommandOutput extends TrustAnchorDetailResponse,
50
50
  * // enabled: true || false,
51
51
  * // createdAt: new Date("TIMESTAMP"),
52
52
  * // updatedAt: new Date("TIMESTAMP"),
53
+ * // notificationSettings: [ // NotificationSettingDetails
54
+ * // { // NotificationSettingDetail
55
+ * // enabled: true || false, // required
56
+ * // event: "STRING_VALUE", // required
57
+ * // threshold: Number("int"),
58
+ * // channel: "STRING_VALUE",
59
+ * // configuredBy: "STRING_VALUE",
60
+ * // },
61
+ * // ],
53
62
  * // },
54
63
  * // };
55
64
  *
@@ -19,7 +19,9 @@ export interface ImportCrlCommandOutput extends CrlDetailResponse, __MetadataBea
19
19
  }
20
20
  /**
21
21
  * @public
22
- * <p>Imports the certificate revocation list (CRL). CRl is a list of certificates that have been revoked by the issuing certificate Authority (CA). IAM Roles Anywhere validates against the crl list before issuing credentials. </p>
22
+ * <p>Imports the certificate revocation list (CRL). A CRL is a list of certificates that have
23
+ * been revoked by the issuing certificate Authority (CA). IAM Roles Anywhere
24
+ * validates against the CRL before issuing credentials. </p>
23
25
  * <p>
24
26
  * <b>Required permissions: </b>
25
27
  * <code>rolesanywhere:ImportCrl</code>.
@@ -19,7 +19,7 @@ export interface ListCrlsCommandOutput extends ListCrlsResponse, __MetadataBeare
19
19
  }
20
20
  /**
21
21
  * @public
22
- * <p>Lists all Crls in the authenticated account and Amazon Web Services Region.</p>
22
+ * <p>Lists all certificate revocation lists (CRL) in the authenticated account and Amazon Web Services Region.</p>
23
23
  * <p>
24
24
  * <b>Required permissions: </b>
25
25
  * <code>rolesanywhere:ListCrls</code>.
@@ -53,6 +53,15 @@ export interface ListTrustAnchorsCommandOutput extends ListTrustAnchorsResponse,
53
53
  * // enabled: true || false,
54
54
  * // createdAt: new Date("TIMESTAMP"),
55
55
  * // updatedAt: new Date("TIMESTAMP"),
56
+ * // notificationSettings: [ // NotificationSettingDetails
57
+ * // { // NotificationSettingDetail
58
+ * // enabled: true || false, // required
59
+ * // event: "STRING_VALUE", // required
60
+ * // threshold: Number("int"),
61
+ * // channel: "STRING_VALUE",
62
+ * // configuredBy: "STRING_VALUE",
63
+ * // },
64
+ * // ],
56
65
  * // },
57
66
  * // ],
58
67
  * // };
@@ -0,0 +1,115 @@
1
+ import { EndpointParameterInstructions } from "@aws-sdk/middleware-endpoint";
2
+ import { Command as $Command } from "@aws-sdk/smithy-client";
3
+ import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
+ import { PutNotificationSettingsRequest, PutNotificationSettingsResponse } from "../models/models_0";
5
+ import { RolesAnywhereClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../RolesAnywhereClient";
6
+ /**
7
+ * @public
8
+ *
9
+ * The input for {@link PutNotificationSettingsCommand}.
10
+ */
11
+ export interface PutNotificationSettingsCommandInput extends PutNotificationSettingsRequest {
12
+ }
13
+ /**
14
+ * @public
15
+ *
16
+ * The output of {@link PutNotificationSettingsCommand}.
17
+ */
18
+ export interface PutNotificationSettingsCommandOutput extends PutNotificationSettingsResponse, __MetadataBearer {
19
+ }
20
+ /**
21
+ * @public
22
+ * <p>Attaches a list of <i>notification settings</i> to a trust anchor.</p>
23
+ * <p>A notification setting includes information such as event name, threshold, status of
24
+ * the notification setting, and the channel to notify.</p>
25
+ * <p>
26
+ * <b>Required permissions: </b>
27
+ * <code>rolesanywhere:PutNotificationSettings</code>.
28
+ * </p>
29
+ * @example
30
+ * Use a bare-bones client and the command you need to make an API call.
31
+ * ```javascript
32
+ * import { RolesAnywhereClient, PutNotificationSettingsCommand } from "@aws-sdk/client-rolesanywhere"; // ES Modules import
33
+ * // const { RolesAnywhereClient, PutNotificationSettingsCommand } = require("@aws-sdk/client-rolesanywhere"); // CommonJS import
34
+ * const client = new RolesAnywhereClient(config);
35
+ * const input = { // PutNotificationSettingsRequest
36
+ * trustAnchorId: "STRING_VALUE", // required
37
+ * notificationSettings: [ // NotificationSettings // required
38
+ * { // NotificationSetting
39
+ * enabled: true || false, // required
40
+ * event: "STRING_VALUE", // required
41
+ * threshold: Number("int"),
42
+ * channel: "STRING_VALUE",
43
+ * },
44
+ * ],
45
+ * };
46
+ * const command = new PutNotificationSettingsCommand(input);
47
+ * const response = await client.send(command);
48
+ * // { // PutNotificationSettingsResponse
49
+ * // trustAnchor: { // TrustAnchorDetail
50
+ * // trustAnchorId: "STRING_VALUE",
51
+ * // trustAnchorArn: "STRING_VALUE",
52
+ * // name: "STRING_VALUE",
53
+ * // source: { // Source
54
+ * // sourceType: "STRING_VALUE",
55
+ * // sourceData: { // SourceData Union: only one key present
56
+ * // x509CertificateData: "STRING_VALUE",
57
+ * // acmPcaArn: "STRING_VALUE",
58
+ * // },
59
+ * // },
60
+ * // enabled: true || false,
61
+ * // createdAt: new Date("TIMESTAMP"),
62
+ * // updatedAt: new Date("TIMESTAMP"),
63
+ * // notificationSettings: [ // NotificationSettingDetails
64
+ * // { // NotificationSettingDetail
65
+ * // enabled: true || false, // required
66
+ * // event: "STRING_VALUE", // required
67
+ * // threshold: Number("int"),
68
+ * // channel: "STRING_VALUE",
69
+ * // configuredBy: "STRING_VALUE",
70
+ * // },
71
+ * // ],
72
+ * // },
73
+ * // };
74
+ *
75
+ * ```
76
+ *
77
+ * @param PutNotificationSettingsCommandInput - {@link PutNotificationSettingsCommandInput}
78
+ * @returns {@link PutNotificationSettingsCommandOutput}
79
+ * @see {@link PutNotificationSettingsCommandInput} for command's `input` shape.
80
+ * @see {@link PutNotificationSettingsCommandOutput} for command's `response` shape.
81
+ * @see {@link RolesAnywhereClientResolvedConfig | config} for RolesAnywhereClient's `config` shape.
82
+ *
83
+ * @throws {@link AccessDeniedException} (client fault)
84
+ * <p>You do not have sufficient access to perform this action.</p>
85
+ *
86
+ * @throws {@link ResourceNotFoundException} (client fault)
87
+ * <p>The resource could not be found.</p>
88
+ *
89
+ * @throws {@link ValidationException} (client fault)
90
+ * <p>Validation exception error.</p>
91
+ *
92
+ * @throws {@link RolesAnywhereServiceException}
93
+ * <p>Base exception class for all service exceptions from RolesAnywhere service.</p>
94
+ *
95
+ */
96
+ export declare class PutNotificationSettingsCommand extends $Command<PutNotificationSettingsCommandInput, PutNotificationSettingsCommandOutput, RolesAnywhereClientResolvedConfig> {
97
+ readonly input: PutNotificationSettingsCommandInput;
98
+ static getEndpointParameterInstructions(): EndpointParameterInstructions;
99
+ /**
100
+ * @public
101
+ */
102
+ constructor(input: PutNotificationSettingsCommandInput);
103
+ /**
104
+ * @internal
105
+ */
106
+ resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: RolesAnywhereClientResolvedConfig, options?: __HttpHandlerOptions): Handler<PutNotificationSettingsCommandInput, PutNotificationSettingsCommandOutput>;
107
+ /**
108
+ * @internal
109
+ */
110
+ private serialize;
111
+ /**
112
+ * @internal
113
+ */
114
+ private deserialize;
115
+ }