訪問控制管理
說明: 本模塊首批接口從API version 8開始支持。后續(xù)版本的新增接口,采用上角標單獨標記接口的起始版本。 開發(fā)前請熟悉鴻蒙開發(fā)指導文檔 :[
gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
導入模塊
import abilityAccessCtrl from '@ohos.abilityAccessCtrl'
abilityAccessCtrl.createAtManager
createAtManager(): AtManager
訪問控制管理:獲取訪問控制模塊對象。
系統(tǒng)能力: SystemCapability.Security.AccessToken
返回值:
類型 | 說明 |
---|---|
[AtManager] | 獲取訪問控制模塊的實例。 |
示例:
var AtManager = abilityAccessCtrl.createAtManager();
AtManager
管理訪問控制模塊的實例。
verifyAccessToken
verifyAccessToken(tokenID: number, permissionName: string): Promise
校驗應用是否授予權限,使用Promise方式異步返回結果。
系統(tǒng)能力: SystemCapability.Security.AccessToken
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
tokenID | number | 是 | 要校驗的目標應用的身份標識。 |
permissionName | string | 是 | 需要校驗的權限名稱。 |
返回值:
類型 | 說明 |
---|---|
Promise | Promise實例,用于獲取異步返回的授權狀態(tài)結果。 |
示例:
var AtManager = abilityAccessCtrl.createAtManager();
let tokenID = 0;
let promise = AtManager.verifyAccessToken(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS");
promise.then(data = > {
console.log(`promise: data- >${JSON.stringify(data)}`);
});
grantUserGrantedPermission
grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number): Promise
授予應用user grant權限,使用Promise方式異步返回結果。
需要權限: ohos.permission.GRANT_SENSITIVE_PERMISSIONS
系統(tǒng)能力: SystemCapability.Security.AccessToken
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
tokenID | number | 是 | 目標應用的身份標識。 |
permissionName | string | 是 | 被授予的權限名稱。 |
permissionFlag | number | 是 | 授權選項,1表示下次仍需彈窗,2表示允許、禁止后不再提醒,3表示系統(tǒng)授權不允許更改。 |
返回值:
類型 | 說明 |
---|---|
Promise | Promise實例,用于獲取異步返回的授權操作結果。 |
示例:
var AtManager = abilityAccessCtrl.createAtManager();
let tokenID = 0;
let permissionFlag = 1;
let promise = AtManager.grantUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS",permissionFlag);
promise.then(data = > {
console.log(`promise: data- >${JSON.stringify(data)}`);
});
grantUserGrantedPermission
grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number, callback: AsyncCallback): void
授予應用user grant權限,使用callback回調(diào)異步返回結果。
需要權限: ohos.permission.GRANT_SENSITIVE_PERMISSIONS
系統(tǒng)能力: SystemCapability.Security.AccessToken
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
tokenID | number | 是 | 目標應用的身份標識。 |
permissionName | string | 是 | 被授予的權限名稱。 |
permissionFlag | number | 是 | 授權選項,1表示下次仍需彈窗,2表示允許、禁止后不再提醒,3表示系統(tǒng)授權不允許更改。 |
callback | AsyncCallback | 是 | 檢查授予應用user grant權限的操作結果同步的回調(diào)。 |
示例:
var AtManager = abilityAccessCtrl.createAtManager();
let tokenID = 0;
let permissionFlag = 1;
AtManager.grantUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS",permissionFlag, data = > {
console.log(`callback: data- >${JSON.stringify(data)}`);
});
revokeUserGrantedPermission
revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number): Promise
撤銷應用user grant權限,使用Promise方式異步返回結果。
需要權限: ohos.permission.REVOKE_SENSITIVE_PERMISSIONS
系統(tǒng)能力: SystemCapability.Security.AccessToken
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
tokenID | number | 是 | 目標應用的身份標識。 |
permissionName | string | 是 | 被撤銷的權限名稱。 |
permissionFlag | number | 是 | 授權選項,1表示下次仍需彈窗,2表示允許、禁止后不再提醒,3表示系統(tǒng)授權不允許更改。 |
返回值:
類型 | 說明 |
---|---|
Promise | Promise實例,用于獲取異步返回的授權操作結果。 |
示例:
var AtManager = abilityAccessCtrl.createAtManager();
let tokenID = 0;
let permissionFlag = 1;
let promise = AtManager.revokeUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS", permissionFlag);
promise.then(data = > {
console.log(`promise: data- >${JSON.stringify(data)}`);
});
revokeUserGrantedPermission
revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number, callback: AsyncCallback): void
撤銷應用user grant權限,使用callback回調(diào)異步返回結果。
需要權限: ohos.permission.REVOKE_SENSITIVE_PERMISSIONS
系統(tǒng)能力: SystemCapability.Security.AccessToken
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
tokenID | number | 是 | 目標應用的身份標識。 |
permissionName | string | 是 | 被撤銷的權限名稱。 |
permissionFlag | number | 是 | 授權選項,1表示下次仍需彈窗,2表示允許、禁止后不再提醒,3表示系統(tǒng)授權不允許更改。 |
callback | AsyncCallback | 是 | 檢查撤銷應用user grant權限的操作結果同步的回調(diào)。 |
示例:
var AtManager = abilityAccessCtrl.createAtManager();
let tokenID = 0;
let permissionFlag = 1;
AtManager.revokeUserGrantedPermission(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS",permissionFlag, data = > {
console.log(`callback: data- >${JSON.stringify(data)}`);
});
getPermissionFlags
getPermissionFlags(tokenID: number, permissionName: string): Promise
獲取指定應用的指定權限的flag,使用Promise方式異步返回結果。
需要權限: ohos.permission.GET_SENSITIVE_PERMISSIONS or GRANT_SENSITIVE_PERMISSIONS or REVOKE_SENSITIVE_PERMISSIONS
系統(tǒng)能力: SystemCapability.Security.AccessToken
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
tokenID | number | 是 | 目標應用的身份標識。 |
permissionName | string | 是 | 查詢的權限名稱。 |
返回值:
類型 | 說明HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿 |
---|---|
Promise | Promise實例,用于獲取異步返回的查詢結果。 |
示例:
var AtManager = abilityAccessCtrl.createAtManager();
let tokenID = 0;
let promise = AtManager.getPermissionFlags(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS");
promise.then(data = > {
console.log(`promise: data- >${JSON.stringify(data)}`);
});
GrantStatus
表示授權狀態(tài)的枚舉。
系統(tǒng)能力: 以下各項對應的系統(tǒng)能力均為SystemCapability.Security.AccessToken
名稱 | 默認值 | 描述 |
---|---|---|
PERMISSION_DENIED | -1 | 表示未授權。 |
PERMISSION_GRANTED | 0 | 表示已授權。 |
審核編輯 黃宇
-
接口
+關注
關注
33文章
8611瀏覽量
151247 -
鴻蒙
+關注
關注
57文章
2358瀏覽量
42876
發(fā)布評論請先 登錄
相關推薦
評論