1/* 2 * Copyright (c) 2025 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16package OHOS.Security.AccessToken; 17import data_lock_type; 18import El5FilekeyCallbackInterface; 19sequenceable OHOS.Security.AccessToken.UserAppKeyInfo; 20sequenceable OHOS.Security.AccessToken.AppKeyLoadInfo; 21option_stub_hooks on; 22 23interface OHOS.Security.AccessToken.El5FilekeyManagerInterface{ 24 void AcquireAccess([in] DataLockType type); 25 void ReleaseAccess([in] DataLockType type); 26 void GenerateAppKey([in] unsigned int uid, [in] String bundleName, [inout] String keyId); 27 void DeleteAppKey([in] String bundleName, [in] int userId); 28 void GetUserAppKey([in] int userId, [in] boolean getAllFlag, [inout] List<UserAppKeyInfo> keyInfos); 29 void ChangeUserAppkeysLoadInfo([in] int userId, [in] List<AppKeyLoadInfo> loadInfos); 30 void SetFilePathPolicy(); 31 void RegisterCallback([in] El5FilekeyCallbackInterface cb); 32 void GenerateGroupIDKey([in] unsigned int uid, [in] String groupID, [inout] String keyId); 33 void DeleteGroupIDKey([in] unsigned int uid, [in] String groupID); 34 void QueryAppKeyState([in] DataLockType type); 35}