From 5dfb002fb7fefdf64a7e8c5a801460be88814c6c Mon Sep 17 00:00:00 2001 From: XiaoshuangMa Date: Tue, 18 Jan 2022 18:51:15 +0800 Subject: [PATCH] modify part name. Signed-off-by: XiaoshuangMa --- ...3\350\276\221\346\236\266\346\236\204.png" | Bin 30725 -> 29017 bytes ...AM\345\255\220\347\263\273\347\273\237.md" | 26 +++++++++--------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git "a/zh-cn/readme/figures/\347\224\250\346\210\267IAM\345\255\220\347\263\273\347\273\237\351\200\273\350\276\221\346\236\266\346\236\204.png" "b/zh-cn/readme/figures/\347\224\250\346\210\267IAM\345\255\220\347\263\273\347\273\237\351\200\273\350\276\221\346\236\266\346\236\204.png" index efd3c80bb7e2a4ca60275b83e06b6b153b6ba817..138cd926b63883931bf758f2f561f6921612f8ae 100644 GIT binary patch literal 29017 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 Ysuf9jbWFAx%!KQL>7}#f#-4Hi16Rt5mH+?% literal 30725 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 diff --git "a/zh-cn/readme/\347\224\250\346\210\267IAM\345\255\220\347\263\273\347\273\237.md" "b/zh-cn/readme/\347\224\250\346\210\267IAM\345\255\220\347\263\273\347\273\237.md" index 6f750733ff..b0ce7b5a34 100644 --- "a/zh-cn/readme/\347\224\250\346\210\267IAM\345\255\220\347\263\273\347\273\237.md" +++ "b/zh-cn/readme/\347\224\250\346\210\267IAM\345\255\220\347\263\273\347\273\237.md" @@ -14,15 +14,15 @@ **图1** 子系统架构图 -coauth架构图 +用户IAM子系统逻辑架构 -用户IAM子系统分为基础框架和动态扩展两个部分,其中**基础框架**部分包含: +用户IAM子系统分为统一用户认证框架和认证执行器两个部分,其中**统一用户认证框架**部分包含: - **统一用户认证:** 对外提供统一用户身份认证功能,并且开放生物特征认证相关功能给三方应用调用。 - **用户身份凭据管理:** 向上提供系统内统一的用户身份凭据信息管理接口,向下通过协同认证模块,调用系统内的认证资源,完成用户身份凭据的生命周期管理和安全存储。 -- **协同认证:** 提供认证资源管理和认证会话管理功能,支持系统内身份认证相关**执行器**统一管理和协同调度,支持不同类型的身份认证执行器灵活对接。 +- **认证执行器管理:** 提供认证资源管理和认证会话管理功能,支持系统内身份认证相关**执行器**统一管理和协同调度,支持不同类型的身份认证执行器灵活对接。 -**动态扩展**部分包含OpenHarmony框架本次默认支持的口令认证和人脸认证功能,并支持开发者按协同认证模块定义好的接口扩展新的认证能力。 +基于统一用户认证框架,系统可以扩展支持多种认证能力。OpenHarmony框架当前已经支持的**认证执行器**包含口令认证和人脸认证,持开发者如果想实现新的认证执行器,只需要在新的部件内实现认证相关功能,并且按照执行器管理模块定义的接口与统一用户认证框架对接即可。 *注:在用户IAM子系统内,将一个用户身份认证操作的最小执行单元称为**执行器**,如一个口令认证模块,处理口令采集、口令处理和比对、口令安全存储的全过程,因此可以抽象为一个口令认证的全功能执行器。* @@ -31,29 +31,29 @@ ```undefined //base/user_iam -├── coauth # 协同认证部件,支持系统内统一的认证资源管理和调度 -├── face_auth # 人脸认证部件,与协同认证对接,支持人脸录入、删除和人脸认证功能 -├── pin_auth # 口令认证部件,与口令认证对接,支持口令录入、删除和口令认证功能 -├── user_auth # 统一用户认证部件,提供统一用户身份认证功能 -└── user_idm # 用户身份凭据管理部件,提供系统内统一的用户身份凭据信息管理功能 +├── auth_executor_mgr # 认证执行器管理部件,支持系统内统一的认证资源管理和调度 +├── face_auth # 人脸认证部件,与协同认证对接,支持人脸录入、删除和人脸认证功能 +├── pin_auth # 口令认证部件,与口令认证对接,支持口令录入、删除和口令认证功能 +├── user_auth # 统一用户认证部件,提供统一用户身份认证功能 +└── user_idm # 用户身份凭据管理部件,提供系统内统一的用户身份凭据信息管理功能 ``` ## 约束 -1. 用户身份凭据信息管理是系统内的关键操作,只允许系统应用调用; -2. 用户身份认证执行器内真正完成用户身份认证凭据信息的处理,只系统服务实现对应能力。 +1. 用户身份凭据信息管理是系统内的关键操作,只支持系统基础应用调用。 +2. 用户身份认证执行器内真正完成用户身份认证凭据信息的处理,只支持系统服务实现对应能力。 ## 说明 ### 使用说明 -1. 用户IAM子系统基础框架必须配合一个认证执行器才可以使用; +1. 用户IAM子系统基础框架必须配合一个认证执行器才可以使用。 2. 系统内默认存在的第一个认证执行器应该是口令认证。 ## 相关仓 -[useriam_coauth](https://gitee.com/openharmony-sig/useriam_coauth) +[useriam_authexecutormgr](https://gitee.com/openharmony-sig/useriam_coauth) [useriam_useridm](https://gitee.com/openharmony-sig/useriam_useridm) -- GitLab