From b1b3fcadb017c31c1d26f26d2a68f6322e1c60c7 Mon Sep 17 00:00:00 2001 From: j21p3 Date: Fri, 22 Nov 2024 11:48:22 +0800 Subject: [PATCH] =?UTF-8?q?cherry=20pick=203089b17=20from=20https://gitee.?= =?UTF-8?q?com/j21p3/security=5Faccess=5Ftoken/pulls/2623=20cherry=20pick?= =?UTF-8?q?=20c476c93=20from=20https://gitee.com/j21p3/security=5Faccess?= =?UTF-8?q?=5Ftoken/pulls/2527=20=E5=9F=9F=E8=B4=A6=E5=8F=B7=E6=9D=83?= =?UTF-8?q?=E9=99=90=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: Icc7b517abdccf836e021ec784b19af539c30dbe9 Signed-off-by: j21p3 --- interfaces/innerkits/accesstoken/include/access_token.h | 1 + .../main/cpp/src/permission/permission_definition_parser.cpp | 5 +++++ services/accesstokenmanager/permission_definitions.json | 4 ++-- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/interfaces/innerkits/accesstoken/include/access_token.h b/interfaces/innerkits/accesstoken/include/access_token.h index 578b02637..a526fc4e8 100644 --- a/interfaces/innerkits/accesstoken/include/access_token.h +++ b/interfaces/innerkits/accesstoken/include/access_token.h @@ -126,6 +126,7 @@ typedef enum TypeATokenAvailableTypeEnum { MDM, SYSTEM_AND_MDM, SERVICE, + ENTERPRISE_NORMAL, AVAILABLE_TYPE_BUTT, } ATokenAvailableTypeEnum; diff --git a/services/accesstokenmanager/main/cpp/src/permission/permission_definition_parser.cpp b/services/accesstokenmanager/main/cpp/src/permission/permission_definition_parser.cpp index 4dd1ed410..b33ff436c 100644 --- a/services/accesstokenmanager/main/cpp/src/permission/permission_definition_parser.cpp +++ b/services/accesstokenmanager/main/cpp/src/permission/permission_definition_parser.cpp @@ -50,6 +50,7 @@ static const std::string AVAILABLE_TYPE_SYSTEM_HAP = "SYSTEM"; static const std::string AVAILABLE_TYPE_MDM = "MDM"; static const std::string AVAILABLE_TYPE_SYSTEM_AND_MDM = "SYSTEM_AND_MDM"; static const std::string AVAILABLE_TYPE_SERVICE = "SERVICE"; +static const std::string AVAILABLE_TYPE_ENTERPRISE_NORMAL = "ENTERPRISE_NORMAL"; static const std::string AVAILABLE_LEVEL_NORMAL = "normal"; static const std::string AVAILABLE_LEVEL_SYSTEM_BASIC = "system_basic"; static const std::string AVAILABLE_LEVEL_SYSTEM_CORE = "system_core"; @@ -102,6 +103,10 @@ static bool GetPermissionAvailableType(const std::string &availableType, AccessT typeNum = AccessToken::ATokenAvailableTypeEnum::SERVICE; return true; } + if (availableType == AVAILABLE_TYPE_ENTERPRISE_NORMAL) { + typeNum = AccessToken::ATokenAvailableTypeEnum::ENTERPRISE_NORMAL; + return true; + } typeNum = AccessToken::ATokenAvailableTypeEnum::INVALID; ACCESSTOKEN_LOG_ERROR(LABEL, "AvailableType: %{public}s is invalid.", availableType.c_str()); return false; diff --git a/services/accesstokenmanager/permission_definitions.json b/services/accesstokenmanager/permission_definitions.json index cc6a967d8..42af7f0f1 100644 --- a/services/accesstokenmanager/permission_definitions.json +++ b/services/accesstokenmanager/permission_definitions.json @@ -434,7 +434,7 @@ "name": "ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS", "grantMode": "system_grant", "availableLevel": "system_basic", - "availableType": "SYSTEM", + "availableType": "ENTERPRISE_NORMAL", "since": 7, "deprecated": "", "provisionEnable": true, @@ -2054,7 +2054,7 @@ "name": "ohos.permission.GET_DOMAIN_ACCOUNTS", "grantMode": "system_grant", "availableLevel": "system_basic", - "availableType": "SYSTEM", + "availableType": "ENTERPRISE_NORMAL", "since": 10, "deprecated": "", "provisionEnable": true, -- Gitee