Go to file
mamingshuai baba52bcb2
!80 ace_engine、napi 部件名仓名和目录名整改
Merge pull request !80 from 0420
2022-04-27 14:08:56 +00:00
figures update docs 2022-03-16 17:38:25 +08:00
frameworks/src 64位数字掩码打印 2022-04-01 14:10:25 +08:00
interfaces !80 ace_engine、napi 部件名仓名和目录名整改 2022-04-27 14:08:56 +00:00
sa_profiles fix code 2022-04-24 11:46:48 +08:00
services fix code 2022-04-24 11:46:48 +08:00
unittest fix code 2022-04-24 11:46:48 +08:00
bundle.json fix code 2022-04-24 11:46:48 +08:00
LICENSE File rights and end symbol fix 2022-03-12 22:33:01 +08:00
OAT.xml fix issue 2022-03-24 19:03:52 +08:00
README_ZH.md fix useridm issue 2022-03-26 15:49:29 +08:00
README.md update docs 2022-03-17 19:42:36 +08:00
useridm.gni build: Remove useless dependencies on package management 2022-04-24 09:55:32 +08:00

User Identity Management (useridm)

Introduction

As a basic component of the user Identity & Access Management (IAM) subsystem, User Identity Management (useridm) provides a unified interface for managing user credential information in the system and invokes authentication resources through the authentication executor management module to implement lifecycle management and secure storage of user credentials.

Figure 1 useridm architecture

useridm_architecture

Directory Structure

//base/user_iam/user_idm
├── frameworks			# Framework code
├── interfaces			# Directory for storing external interfaces
│   └── innerkits		# Header files exposed to the internal subsystems
├── sa_profile			# Profile of the Service ability
├── services			# Implementation of the Service ability
├── unittest			# Directory for storing test code
├── utils				# Directory for storing utility code
├── bundle.json			# Component description file
└── useridm.gni			# Build configuration

Usage

Available APIs

Table 1 APIs for managing user credentials

API Description
addCredential(credentialInfo : CredentialInfo, callback : IIdmCallback) : void; Adds a user credential.
updateCredential(credentialInfo:CredentialInfo, callback:IIdmCallback) : void; Updates a user credential.
delUser(token : Uint8Array, callback : IIdmCallback) : void; Deletes a Personal Information Number (PIN). When a PIN is deleted, all authentication credentials of the user are also deleted.
delCred(credentialId : Uint8Array, token : Uint8Array, callback : IIdmCallback) : void; Deletes a user credential.

Table 2 API for querying user credential information

API Description
getAuthInfo(callback : AsyncCallback<Array>,authType? : AuthType) : void; Obtains one or all types of authentication credentials of a user.

Usage Guidelines

  • The APIs defined in the header file common\interface\useridm_interface.h in the useriam_auth_executor_mgr repository must be implemented in a Trusted Execution Environment (TEE). In addition, the association between the user credentials and user IDs should not be tampered with, and unified user authentication must be supported.
  • During the adaptation, vendors can refer to the software implementation of related functions provided by the OpenHarmony framework.

Repositories Involved

useriam_auth_executor_mgr

useriam_user_idm

useriam_user_auth

useriam_pin_auth

useriam_faceauth