!163 时间服务AccessToken整改

Merge pull request !163 from zhangjunxi/master
This commit is contained in:
openharmony_ci
2022-06-08 13:42:44 +00:00
committed by Gitee
+13 -2
View File
@@ -27,12 +27,23 @@ bool TimePermission::CheckCallingPermission(const std::string &permissionName)
}
auto callerToken = IPCSkeleton::GetCallingTokenID();
int result = Security::AccessToken::AccessTokenKit::VerifyAccessToken(callerToken, permissionName);
auto tokenType = Security::AccessToken::AccessTokenKit::GetTokenTypeFlag(callerToken);
int result = Security::AccessToken::PERMISSION_DENIED;
if (tokenType == Security::AccessToken::ATokenTypeEnum::TOKEN_NATIVE) {
result = Security::AccessToken::AccessTokenKit::VerifyNativeToken(callerToken, permissionName);
} else if (tokenType == Security::AccessToken::ATokenTypeEnum::TOKEN_HAP) {
result = Security::AccessToken::AccessTokenKit::VerifyAccessToken(callerToken, permissionName);
} else {
TIME_HILOGE(TIME_MODULE_COMMON, "permission check failed, callerToken:%{public}u,tokenType:%{public}d",
callerToken, tokenType);
}
if (result != Security::AccessToken::PERMISSION_GRANTED) {
TIME_HILOGE(TIME_MODULE_COMMON, "permission check failed, permission:%{public}s, callerToken:%{public}u",
permissionName.c_str(), callerToken);
return false;
}
return result == Security::AccessToken::PERMISSION_GRANTED;
return true;
}
} // namespace MiscServices
} // namespace OHOS