From a663436685e1feee1491852333a192f9225338fa Mon Sep 17 00:00:00 2001 From: zhouyan Date: Mon, 28 Jul 2025 18:00:22 +0800 Subject: [PATCH] =?UTF-8?q?AI=E5=91=8A=E8=AD=A6=E4=B8=8EAI=E6=A3=80?= =?UTF-8?q?=E8=A7=86=E6=84=8F=E8=A7=81=E4=BF=AE=E6=94=B9+=E8=93=9D?= =?UTF-8?q?=E9=BB=84=E4=B8=8D=E4=B8=80=E8=87=B4=E4=BF=AE=E6=94=B9+?= =?UTF-8?q?=E9=9A=90=E7=A7=81client=E9=94=99=E8=AF=AF=E7=A0=81=E6=97=A5?= =?UTF-8?q?=E5=BF=97=E6=89=93=E5=8D=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhouyan Change-Id: I17356beeba6e65f7f17ac300da0f6333ee6bfa3b --- frameworks/ets/ani/common/ets/permissions.ets | 2 +- interfaces/innerkits/privacy/src/privacy_kit.cpp | 2 +- .../privacy/src/privacy_manager_client.cpp | 2 ++ .../privacy/test/unittest/src/privacy_kit_test.cpp | 1 + .../main/cpp/src/database/rdb_dlopen_manager.cpp | 2 +- .../coverage/permission_manager_coverage_test.cpp | 10 +++++----- .../unittest/accesstoken_manager_service_test.cpp | 2 +- .../include/record/permission_record_manager.h | 2 +- .../src/record/permission_record_manager.cpp | 14 ++++++++------ 9 files changed, 21 insertions(+), 16 deletions(-) diff --git a/frameworks/ets/ani/common/ets/permissions.ets b/frameworks/ets/ani/common/ets/permissions.ets index c06103b96..f93c98365 100644 --- a/frameworks/ets/ani/common/ets/permissions.ets +++ b/frameworks/ets/ani/common/ets/permissions.ets @@ -25,7 +25,7 @@ * @syscap SystemCapability.Security.AccessToken * @since 9 */ - /** +/** * Indicates permissions. * * @typedef { string } diff --git a/interfaces/innerkits/privacy/src/privacy_kit.cpp b/interfaces/innerkits/privacy/src/privacy_kit.cpp index 73fe5ac8b..a1da62bc8 100644 --- a/interfaces/innerkits/privacy/src/privacy_kit.cpp +++ b/interfaces/innerkits/privacy/src/privacy_kit.cpp @@ -209,7 +209,7 @@ int32_t PrivacyKit::UnRegisterPermActiveStatusCallback(const std::shared_ptrIsAllowedUsingPermission(tokenID, permissionName, pid, isAllowed); + LOGI(PRI_DOMAIN, PRI_TAG, "Request result is %{public}s.", (isAllowed ? "true" : "false")); return isAllowed; } diff --git a/interfaces/innerkits/privacy/test/unittest/src/privacy_kit_test.cpp b/interfaces/innerkits/privacy/test/unittest/src/privacy_kit_test.cpp index c10110324..e863945cd 100644 --- a/interfaces/innerkits/privacy/test/unittest/src/privacy_kit_test.cpp +++ b/interfaces/innerkits/privacy/test/unittest/src/privacy_kit_test.cpp @@ -1461,6 +1461,7 @@ HWTEST_F(PrivacyKitTest, IsAllowedUsingPermission001, TestSize.Level0) ASSERT_EQ(false, PrivacyKit::IsAllowedUsingPermission(g_tokenIdE, permissionName)); ASSERT_EQ(false, PrivacyKit::IsAllowedUsingPermission(0, permissionName)); ASSERT_EQ(false, PrivacyKit::IsAllowedUsingPermission(g_tokenIdE, "")); + ASSERT_EQ(false, PrivacyKit::IsAllowedUsingPermission(0, "")); } /** diff --git a/services/accesstokenmanager/main/cpp/src/database/rdb_dlopen_manager.cpp b/services/accesstokenmanager/main/cpp/src/database/rdb_dlopen_manager.cpp index edb157b40..a27b10268 100644 --- a/services/accesstokenmanager/main/cpp/src/database/rdb_dlopen_manager.cpp +++ b/services/accesstokenmanager/main/cpp/src/database/rdb_dlopen_manager.cpp @@ -157,7 +157,7 @@ AccessTokenDbLoaderInterface* RdbDlopenManager::GetDbInstance() handle_ = dlopen(RDB_ADAPTER_LIBPATH, RTLD_LAZY); if (handle_ == nullptr) { LOGE(ATM_DOMAIN, ATM_TAG, "Dlopen %{public}s failed, errno is %{public}d, errMsg is %{public}s.", - RDB_SYMBOL_DESTROY, errno, dlerror()); + RDB_ADAPTER_LIBPATH, errno, dlerror()); return nullptr; } } diff --git a/services/accesstokenmanager/test/coverage/permission_manager_coverage_test.cpp b/services/accesstokenmanager/test/coverage/permission_manager_coverage_test.cpp index e1af7c9a0..1f01fd81a 100644 --- a/services/accesstokenmanager/test/coverage/permission_manager_coverage_test.cpp +++ b/services/accesstokenmanager/test/coverage/permission_manager_coverage_test.cpp @@ -288,14 +288,14 @@ HWTEST_F(PermissionManagerCoverageTest, GetMasterAppUndValues001, TestSize.Level */ HWTEST_F(PermissionManagerCoverageTest, InitPermissionList001, TestSize.Level4) { - PermissionStatus status1; + PermissionStatus status1; // user grant permission ohos.permission.READ_MEDIA with pre-authorization status1.permissionName = "ohos.permission.READ_MEDIA"; status1.grantStatus = static_cast(PermissionState::PERMISSION_DENIED); - status1.grantFlag = static_cast(PermissionFlag::PERMISSION_DEFAULT_FLAG); - PermissionStatus status2; + status1.grantFlag = static_cast(PermissionFlag::PERMISSION_DEFAULT_FLAG); + PermissionStatus status2; // user grant permission ohos.permission.WRITE_MEDIA without pre-authorization status2.permissionName = "ohos.permission.WRITE_MEDIA"; status2.grantStatus = static_cast(PermissionState::PERMISSION_DENIED); - status2.grantFlag = static_cast(PermissionFlag::PERMISSION_DEFAULT_FLAG); + status2.grantFlag = static_cast(PermissionFlag::PERMISSION_DEFAULT_FLAG); PreAuthorizationInfo info; info.permissionName = "ohos.permission.READ_MEDIA"; @@ -309,8 +309,8 @@ HWTEST_F(PermissionManagerCoverageTest, InitPermissionList001, TestSize.Level4) param.appDistributionType = "os_integration"; HapInitInfo initInfo; - initInfo.installInfo = param; initInfo.policy = policy; + initInfo.installInfo = param; std::vector initializedList; HapInfoCheckResult result; std::vector undefValues; diff --git a/services/accesstokenmanager/test/unittest/accesstoken_manager_service_test.cpp b/services/accesstokenmanager/test/unittest/accesstoken_manager_service_test.cpp index 55179b20e..278f2a37e 100644 --- a/services/accesstokenmanager/test/unittest/accesstoken_manager_service_test.cpp +++ b/services/accesstokenmanager/test/unittest/accesstoken_manager_service_test.cpp @@ -312,7 +312,7 @@ HWTEST_F(AccessTokenManagerServiceTest, UpdateHapTokenTest001, TestSize.Level0) } /** - * @tc.name: InitHapTokenTest002 + * @tc.name: UpdateHapTokenTest002 * @tc.desc: test ota update acl check fail return false * @tc.type: FUNC * @tc.require: diff --git a/services/privacymanager/include/record/permission_record_manager.h b/services/privacymanager/include/record/permission_record_manager.h index abe474ca3..2398c1e48 100644 --- a/services/privacymanager/include/record/permission_record_manager.h +++ b/services/privacymanager/include/record/permission_record_manager.h @@ -167,7 +167,7 @@ private: void ModifyMuteStatus(const std::string& permissionName, int32_t index, bool isMute); bool GetMuteStatus(const std::string& permissionName, int32_t index); - void ExecuteCameraCallbackAsync(AccessTokenID tokenId, int32_t pid); + void ExecuteCameraCallbackAsync(AccessTokenID tokenId, int32_t callbackPid); void TransformEnumToBitValue(const PermissionUsedType type, uint32_t& value); bool AddOrUpdateUsedTypeIfNeeded(const AccessTokenID tokenId, const int32_t opCode, diff --git a/services/privacymanager/src/record/permission_record_manager.cpp b/services/privacymanager/src/record/permission_record_manager.cpp index b01b4dc92..7b164fd86 100644 --- a/services/privacymanager/src/record/permission_record_manager.cpp +++ b/services/privacymanager/src/record/permission_record_manager.cpp @@ -56,7 +56,9 @@ namespace AccessToken { namespace { static const int32_t VALUE_MAX_LEN = 32; constexpr const char* CAMERA_PERMISSION_NAME = "ohos.permission.CAMERA"; +constexpr const char* CAMERA_BACKGROUND_PERMISSION_NAME = "ohos.permission.CAMERA_BACKGROUND"; constexpr const char* MICROPHONE_PERMISSION_NAME = "ohos.permission.MICROPHONE"; +constexpr const char* MICROPHONE_BACKGROUND_PERMISSION_NAME = "ohos.permission.MICROPHONE_BACKGROUND"; constexpr const char* EDM_MIC_MUTE_KEY = "persist.edm.mic_disable"; constexpr const char* EDM_CAMERA_MUTE_KEY = "persist.edm.camera_disable"; #ifndef APP_SECURITY_PRIVACY_SERVICE @@ -418,13 +420,13 @@ bool PermissionRecordManager::VerifyNativeRecordPermission( bool isGranted = false; if (permissionName == CAMERA_PERMISSION_NAME) { isGranted = (AccessTokenHelper::VerifyAccessToken( - tokenId, "ohos.permission.CAMERA_BACKGROUND") == PERMISSION_GRANTED); + tokenId, CAMERA_BACKGROUND_PERMISSION_NAME) == PERMISSION_GRANTED); LOGI(PRI_DOMAIN, PRI_TAG, "Native tokenId %{public}d, isGranted %{public}d, permission %{public}s.", tokenId, isGranted, permissionName.c_str()); return isGranted; } else if (permissionName == MICROPHONE_PERMISSION_NAME) { isGranted = (AccessTokenHelper::VerifyAccessToken( - tokenId, "ohos.permission.MICROPHONE_BACKGROUND") == PERMISSION_GRANTED); + tokenId, MICROPHONE_BACKGROUND_PERMISSION_NAME) == PERMISSION_GRANTED); LOGI(PRI_DOMAIN, PRI_TAG, "Native tokenId %{public}d, isGranted %{public}d, permission %{public}s.", tokenId, isGranted, permissionName.c_str()); return isGranted; @@ -535,7 +537,7 @@ bool PermissionRecordManager::AddOrUpdateUsedStatusIfNeeded(int32_t userID, bool if (results.empty()) { // empty means there is no user record, add it - LOGD(PRI_DOMAIN, PRI_TAG, "No exsit record, add it."); + LOGD(PRI_DOMAIN, PRI_TAG, "No exist record, add it."); GenericValues recordValue; recordValue.Put(PrivacyFiledConst::FIELD_USER_ID, userID); @@ -1291,11 +1293,11 @@ void PermissionRecordManager::ExecuteAllCameraExecuteCallback() this->cameraCallbackMap_.Iterate(it); } -void PermissionRecordManager::ExecuteCameraCallbackAsync(AccessTokenID tokenId, int32_t pid) +void PermissionRecordManager::ExecuteCameraCallbackAsync(AccessTokenID tokenId, int32_t callbackPid) { LOGD(PRI_DOMAIN, PRI_TAG, "Entry."); - auto task = [tokenId, pid, this]() { - uint64_t uniqueId = GetUniqueId(tokenId, pid); + auto task = [tokenId, callbackPid, this]() { + uint64_t uniqueId = GetUniqueId(tokenId, callbackPid); LOGI(PRI_DOMAIN, PRI_TAG, "ExecuteCameraCallbackAsync task called."); auto it = [&](uint64_t id, sptr cameraCallback) { auto callback = iface_cast(cameraCallback); -- Gitee