@aws-sdk/ 客户端控制塔
说明
JavaScript ControlTower 客户端的 AWS SDK 为Node.js, 浏览器和React Industrial.
亚马逊网络服务控制 Tower提供应用程序编程接口(API)操作,支持与这些类型的资源进行方案互动:
关于这类资源的更多信息,请参见: 亚马逊网络服务控制塔用户指南 。 。 。 .
关于控制 APIs
这些界面允许您应用预先定义的 Amazon Web 服务库 控件 给组织单位,在方案上。 在亚马逊网络服务控制塔(英语:Amazon Web Services Control Tower)中,"control"和"guardrail"是同义词.
给这些API打电话,你需要知道:
-
页:1
controlIdentifier你的目标是控制或护栏. -
与目标组织单位有关的ARN,我们称之为
targetIdentifier。 。 。 . -
aRN 与您想要标记或调试的资源相关联.
为了得到 controlIdentifier 用于您的 Amazon 网络服务控制塔控制 :
这个 controlIdentifier 为每个控件指定的ARN。 你可以看到 controlIdentifier 在操纵台上 控制细节 页:1.
关于亚马逊网络服务控制塔的标识符
亚马逊网络服务控制塔 controlIdentifier 每个亚马逊网络服务区对每个控制都独一无二。 你可以找到那个 controlIdentifier 区域控制 控制元数据表 或 按区域表分列的控制可用性 输入 亚马逊网络服务控制塔控制参考指南。 。 。 .
Amazon Web 服务控制塔遗存控制标识的快速参考列表 强烈建议 财务报告和审定财务报表 名词 控件在 API和控件的资源标识符 输入 亚马逊网络服务控制塔控制参考指南 。记住 强制性 无法添加或删除控件.
有些控制器有两个识别器
-
Amazon网络服务控制塔的ARN格式 :
arn:aws:controltower:{REGION}::control/{CONTROL_TOWER_OPAQUE_ID}示例
arn:aws:controltower:us-west-2::control/AWS-GR_AUTOSCALING_LAUNCH_CONFIG_PUBLIC_IP_DISABLED -
Amazon网络服务控制目录的ARN格式 :
arn:{PARTITION}:controlcatalog:::control/{CONTROL_CATALOG_OPAQUE_ID}
你可以找到那个 {CONTROL_CATALOG_OPAQUE_ID} 输入 亚马逊网络服务控制塔控制参考指南 ,或者在亚马逊网络服务控制塔控制台上 控制细节 页 次.
Amazon网络服务控制塔 API 用于启用控制, 例如 GetEnabledControl 财务报告和审定财务报表 ListEnabledControls 总是返回控件启用时给出的同类型 ARN .
为了得到 targetIdentifier数字 :
这个 targetIdentifier 是一个OU的ARN.
在亚马逊网络服务组织控制台上,您可以在 组织单位详情 与OU相关的页面.
OU ARN 格式 :
arn:${Partition}:organizations::${MasterAccountId}:ou/o-${OrganizationId}/ou-${OrganizationalUnitId}
关于着陆区 APIs
您可以配置并启动一个带有API的亚马逊网络服务控制塔着陆区. 关于导言和步骤,见 使用 APIs 启动 Amazon 网络服务控制塔。 。 。 .
降落区行动概况,见 亚马逊网络服务控制 塔台支持着陆区 API本文件详述了API在登陆区的各项行动 API 参考手册,在"行动"部分.
关于基线 API
您可以应用 AWSControlTowerBaseline 将OU作为向亚马逊网络服务控制塔注册的方法。 关于这种能力的一般概况,见 亚马逊网络服务控制 Tower支持带有基线的 OU 注册和配置的 API。 。 。 .
您可以调用基线 API 操作来查看 Amazon Web Services Control Tower 在设置起落区时为您的起落区提供的基线 。 这些基线是只读的基线.
本文件详细介绍了基线的API业务 API 参考手册,在"行动"部分. 使用实例见 与CLI的 API 输入和输出实例。 。 。 .
关于亚马逊网络服务控制目录标识符
-
这个
EnableControl财务报告和审定财务报表DisableControlAPI操作可以通过指定亚马逊网络服务控制塔identifer或亚马逊网络服务控制目录标识来调用. API 响应返回您在调用 API 时指定的相同类型的标识符 . -
如果您使用 Amazon 网络服务控制塔标识符来调用
EnableControlAPI,然后打电话EnableControl再次使用 Amazon 网络服务控制目录标识符, Amazon 网络服务控制 Tower 返回一个错误消息, 声明控件已经启用 。 类似行为适用于DisableControlAPI操作. -
强制控制和登陆区级区域拒绝控制只有亚马逊网络服务控制塔标识.
细节和实例
要查看 GitHub 上的开源资源库,请参见 aws-cloudform/aws-cloudform-resources-profile-contrower (英语:aws-cloudformation/aws-cloudform-resources-servers-controttower) (英语)
记录 API 请求
Amazon Web Services Control Tower支持Amazon Web Services CloudTrail,这个服务记录了Amazon Web Services API呼唤你的Amazon Web Services账户,并将日志文件交付给一个Amazon S3桶. 通过使用CloudTrail收集的信息,您可以确定收到的亚马逊网络服务控制塔服务是哪一个请求,谁提出请求,何时,等等. 关于亚马逊网络服务控制塔及其支持CloudTrail的更多信息,请参见: 使用 Amazon 网络服务 CloudTrail 登录 Amazon 网络服务控制塔行动 在亚马逊网络服务控制塔用户指南中。 要更多了解CloudTrail,包括如何打开并找到您的日志文件,请参见"亚马逊网络服务CloudTrail用户指南".
安装
要安装此软件包, 请使用您最喜欢的软件包管理器的 CLI :
npm install @aws-sdk/client-controltoweryarn add @aws-sdk/client-controltowerpnpm add @aws-sdk/client-controltower
开始
导入
AWS SDK由客户端和命令进行调制.
要发送请求,只需导入 ControlTowerClient 财务报告和审定财务报表
例如,您需要的命令 ListBaselinesCommand数字 :
// ES5 example
const { ControlTowerClient, ListBaselinesCommand } = require("@aws-sdk/client-controltower");
// ES6+ example
import { ControlTowerClient, ListBaselinesCommand } from "@aws-sdk/client-controltower";
使用量
发出请求:
- 以配置(如证书,区域)为客户端提供证据.
- 见 文件/中心 用于配置细节.
- 见 @aws- sdk/ 配置 附加选项.
- 以输入参数证明命令 .
- 打电话
send操作客户端,以输入方式提供命令对象.
const client = new ControlTowerClient({ region: "REGION" });
const params = { /** input parameters */ };
const command = new ListBaselinesCommand(params);
自动/等待
我们建议使用 等待时 运算符等待通过发送操作返回的承诺如下:
// async/await.
try {
const data = await client.send(command);
// process data.
} catch (error) {
// error handling.
} finally {
// finally.
}
承诺
您还可以使用 承诺连锁。 。 。 .
client
.send(command)
.then((data) => {
// process data.
})
.catch((error) => {
// error handling.
})
.finally(() => {
// finally.
});
合并客户端
归集客户端类别从同套件中导出,但没有"Client"后缀.
ControlTower 扩展 ControlTowerClient 并额外支持所有操作,服务员, 和活人作为方法.
这种风格可能从JavaScript v2的AWS SDK中为您所熟悉.
如果你正在捆绑 AWS SDK, 我们建议只使用赤骨客户端(ControlTowerClient) (中文(简体) ).
更多详情见博客文章:
javaScript 的 AWS SDK 模块包。 。 。 .
import { ControlTower } from "@aws-sdk/client-controltower";
const client = new ControlTower({ region: "REGION" });
// async/await.
try {
const data = await client.listBaselines(params);
// process data.
} catch (error) {
// error handling.
}
// Promises.
client
.listBaselines(params)
.then((data) => {
// process data.
})
.catch((error) => {
// error handling.
});
// callbacks (not recommended).
client.listBaselines(params, (err, data) => {
// process err and data.
});
解决问题
当服务返回例外时,错误将包括例外信息, 以及响应元数据(如请求编号).
try {
const data = await client.send(command);
// process data.
} catch (error) {
const { requestId, cfId, extendedRequestId } = error.$metadata;
console.log({ requestId, cfId, extendedRequestId });
/**
* The keys within exceptions are also parsed.
* You can access them by specifying exception names:
* if (error.name === 'SomeServiceException') {
* const value = error.specialKeyInException;
* }
*/
}
另见 文档/错误。 。 。 .
获取帮助
请利用这些社区资源获得帮助. 我们使用 GitHub 问题来跟踪错误和特性请求,但处理它们的带宽有限.
- 访问 开发者指南 或者说 API 参考。 。 。 .
- 看看贴有标签的博客文章
aws-sdk-jsaWS 开发者博客. - 问个问题 叠叠流 并贴上标签
aws-sdk-js。 。 。 . - 加入 AWS JavaScript 社区 发光。 。 。 .
- 如果你发现你发现了一个虫子,请 打开一个问题。 。 。 .
为了测试您在Node.js中通用的JavaScript代码,浏览器和反应本地环境, 拜访我们 代码样本 repo。 。 。 .
捐款
此客户端代码是自动生成的. 任何修改在下次修改时都会被覆盖 @aws-sdk/client-controltower 软件包正在更新.
为了帮助客户,你可以检查我们 生成客户端脚本。 。 。 .
许可证
此 SDK 分布于 Apache 许可证,2.0版本, (中文(简体) ), 更多信息见LICENSE.