Amazon Cloud Directory 现已全面上市

免费试用 Amazon Cloud Directory

对于 Amazon Cloud Directory,AWS 免费套餐每月包含 1GB 的存储、100000 次最终一致性读取 API 调用和 10000 次强一致性读取 API 调用加写入 API 调用。

查看 AWS 免费套餐详细信息 »

什么是 Amazon Cloud Directory?

Amazon Cloud Directory 是一个原生云、高度可扩展、高性能、多租户的目录服务。它提供基于 Web 的目录,使您能够轻松地组织和管理所有应用程序资源,例如用户、组、位置、设备、策略及其之间的多种关系。Cloud Directory 是开发人员创建基于目录的解决方案的基础构建块,让他们无需担心部署、全局规模、可用性和性能。

与现有的传统目录系统不同,Cloud Directory 不会限制您只能在单个固定层次结构中组织目录对象。您可以在 Cloud Directory 中将目录对象组织成多个层次结构,以支持跨目录信息的多个组织透视表和关系。例如,用户目录可提供基于报告结构、位置和项目联系的分层视图。与之类似,设备目录也能提供基于其制造商、当前拥有者和实际位置的多个分层视图。

Cloud Directory 提供接近无限数量的目录。它可以自动将每个目录扩展到数亿个节点,同时提供一致的性能。Cloud Directory 通过优化,可提供高速率、低延迟性能,最终达到一致的读取。开发人员可使用可扩展架构对目录对象进行建模,从而自动实现数据正确性限制,并可轻松针对其编程。Cloud Directory 基于客户定义的索引属性提供丰富的信息查找,从而在树目录中实现快速树遍历和搜索。Cloud Directory 数据会在空闲和传输时进行加密。

Amazon Cloud Directory 有哪些重要功能?

重要功能包括:

  • 多层次组织信息支持,可捕获实体之间的丰富关系。
  • 快速查找和搜索优化,可高效检索元素值。
  • 支持高速率、最终一致的读取操作。
  • 支持可扩展对象架构,可简化应用程序开发并方便多个应用程序与公共目录信息之间的互操作。
  • 无缝扩展到数百万个对象和分类。
  • 可在目录对象上定义各种应用程序特定的策略。
  • Cloud Directory 数据会在空闲和传输时进行加密。

Cloud Directory 有哪些核心使用案例?

客户可以使用 Cloud Directory 来构建应用程序,例如 IoT 设备注册表、社交网络、网络配置和用户目录。这些使用案例通常需要分层组织数据来执行大量低延迟查找,并使用全局可用性扩展到数亿个对象。

Cloud Directory 适合哪些客户?

大大小小的客户都可使用 Amazon Cloud Directory 来轻松构建基于目录的应用程序。

Cloud Directory 与传统目录有何区别?

Amazon Cloud Directory 是开发人员为数亿个对象和关系构建云本地目录的基础服务。它提供所有必要 API,让您可以使用架构创建目录、添加对象和关系以及将策略附加到这些对象和关系。

传统基于 LDAP 的目录设计成供组织用来管理用户和设备的 IT 工具。这些目录提供身份认证和策略框架,但缺乏管理数亿个对象和关系的可扩展性。传统目录针对使用案例而不是开发人员构建云、移动和 IoT 应用程序进行优化。

我应何时对 Microsoft Active Directory (企业版) 或 Amazon Cognito 用户池使用 Cloud Directory 或 AWS Directory Service?

用于 Microsoft Active Directory (企业版) 或 AWS Microsoft AD 的 AWS Directory Service 旨在支持需要 Microsoft Active Directory 且基于 Windows 的工作负载。因此,AWS Microsoft AD 的设计主要针对依赖 Microsoft Active Directory 的企业 IT 使用案例和应用程序。

Amazon Cognito 用户池则是提供给开发人员的身份解决方案,可执行身份验证、联合身份验证和用户凭据管理。

Amazon Cloud Directory 专为具有以下需求的开发人员设计:需要管理大量分层数据并且需要灵活的目录解决方案以支持多组关系和内置数据验证。

使用 Amazon Cloud Directory 需要注意哪些关键术语和概念?

要使用 Amazon Cloud Directory,您需要了解以下关键术语:

什么是目录?

目录定义数据存储 (如 Amazon DynamoDB 中的表) 的范围,将其与服务中的所有其他目录完全隔离。目录还定义事务范围、查询范围等其他范围。此外,目录还代表客户树的根对象,并且可有多个目录对象作为其子对象。客户必须在目录级别应用架构。

什么是架构?

架构定义目录中允许的分面、属性和限制。这包括定义:

  • 可能包含在目录中的一种或多种类型分面 (如 Person、Organization_Person)。
  • 在各种类型分面中需要或允许的属性。
  • 限制 (如必需或唯一、整数或字符串等基本数据类型)。

什么是分面?

分面是属性和限制的集合。组合单个或多个分面能帮助定义目录中的对象。例如,人员和设备可以是定义企业员工与多个设备关联的分面。

什么是对象?

对象代表目录中的结构化数据实体。目录中的对象旨在捕获有关物理或逻辑实体的元数据,通常用于信息发现和实施策略。例如,用户、设备和应用程序均属于对象类型。对象结构和类型信息都是用分面集合来表示。

什么是属性?

属性是用户定义且与对象关联的元数据单位。例如,用户对象可以具有称为电子邮件地址的属性。属性始终与对象相关联。

什么是层次结构?

层次结构是一种视图,其中组和对象均按父子关系组织,类似于文件夹下面有文件和子文件夹的文件系统。Amazon Cloud Directory 支持将对象组织到多个层次结构中。

什么是策略?

策略是专门的对象类型,具有定义策略和策略文档类型的属性。策略可以附加到对象或层次结构的根。在默认情况下,对象将从父级继承策略。Amazon Cloud Directory 不会解释策略。 

如何在 Amazon Cloud Directory 中预置新目录?

您可按照以下步骤在 Amazon Cloud Directory 中预置新目录:

  1. 登录具有管理 Cloud Directory 权限的任何 AWS 账户。
  2. 打开 AWS 管理控制台并导航到 Amazon Cloud Directory 控制台。
  3. 单击创建新目录
  4. 命名新目录。
  5. 为目录选择预定义架构或创建新架构。
  6. 创建新目录后,您可以使用 Amazon Cloud Directory API 开始在容器中填充符合关联架构的对象。如果您只有一个目录,就可以开始在目录中填充基于架构的对象和所选的分面 (例如产品目录的产品) 。如果您有多个不同实体的目录,您可以为每个实体目录创建一个根节点,然后开始填充目录 (例如在一个目录中将用户和设备构建为两个不同类型的目录)。

您还可以使用 AWS 命令行界面 (CLI) 执行相同的步骤来创建新的 Amazon Cloud Directory 容器。Amazon Cloud Directory 允许使用 SDK 以编程方式来创建、读取、删除和更新目录。

如何创建和管理架构?

Amazon Cloud Directory 提供 SDK 和 CLI 来创建、读取和更新架构。Cloud Directory 还支持上传兼容 JSON 文件来创建架构。您还可以使用 Cloud Directory 控制台创建和管理架构。

Amazon Cloud Directory 是否提供任何示例架构?

提供,Amazon Cloud Directory 现在提供以下示例架构:

  • 组织
  • 个人 (用户)
  • 设备

什么是 Cloud Directory 中的最终一致性和强一致性读取操作?

Amazon Cloud Directory 是一种分布式目录存储。这意味着数据分布在不同可用区中的多个服务器上。

从 Cloud Directory 读取数据时,您必须指定最终一致性或强一致性读取操作类型。读取类型基于一致性水平。最终一致性读取的一致性水平为最终一致,而强一致性读取的一致性水平为序列化一致。有关更多信息,请参阅一致性水平

哪些读取 API 调用会按最终一致性读取 API 调用来计费?

如果调用时的一致性水平为文档中所述的最终一致性水平,那么以下读取 API 调用会按最终一致性读取 API 调用来计费:

  • BatchRead
  • GetObjectInformation
  • ListAttachedIndices
  • ListIncomingTypedLinks
  • ListIndex
  • ListObjectAttributes
  • ListObjectChildren
  • ListObjectParentPaths
  • ListObjectParents
  • ListObjectPolicies
  • ListOutgoingTypedLinks
  • ListPolicyAttachments
  • LookupPolicy

哪些读取 API 调用会按强一致性读取 API 调用来计费?

如果调用时的一致性水平为文档中所述的序列化一致性水平,那么以下 API 调用会按强一致性读取 API 调用来计费:

  • BatchRead
  • GetObjectInformation
  • ListAttachedIndices
  • ListIncomingTypedLinks
  • ListIndex
  • ListObjectAttributes
  • ListObjectChildren
  • ListObjectParents
  • ListObjectPolicies
  • ListOutgoingTypedLinks
  • ListPolicyAttachments

哪些 API 调用会按写入 API 调用来计费?

以下 API 调用会按写入 API 调用来计费:

  • AddFacetToObject
  • AttachObject
  • AttachPolicy
  • AttachToIndex
  • AttachTypedLink
  • BatchWrite
  • CreateDirectory
  • CreateIndex
  • CreateObject
  • DeleteObject
  • DetachFromIndex
  • DetachObject
  • DetachPolicy
  • DetachTypedLink
  • EnableDirectory
  • RemoveFacetFromObject
  • UpdateObjectAttributes

元数据 API 调用是否计费?

不,元数据 API 调用不计费。以下 API 调用归类为元数据 API 调用:

禁用或删除目录 API 调用

  • DeleteDirectory
  • DisableDirectory  

获取目录详细信息 API 调用

  • GetDirectory
  • ListDirectories

架构 API 调用

  • ApplySchema
  • CreateFacet
  • CreateSchema
  • DeleteFacet
  • DeleteSchema
  • GetFacet
  • GetSchemaAsJson
  • ListAppliedSchemaArns
  • ListDevelopmentSchemaArns
  • ListFacetAttributes
  • ListFacetNames
  • ListPublishedSchemaArns
  • PublishSchema
  • PutSchemaFromJson
  • UpdateFacet
  • UpdateSchema

标记 API 调用

  • ListTagsForResource
  • TagResource
  • UntagResource

键入链接 API 调用

  • CreateTypedLinkFacet
  • DeleteTypedLinkFacet
  • GetTypedLinkFacetInformation
  • ListTypedLinkFacetAttributes
  • ListTypedLinkFacetNames
  • UpdateTypedLinkFacet