訪問控制管理
說明: 本模塊首批接口從API version 8開始支持。后續(xù)版本的新增接口,采用上角標(biāo)單獨(dú)標(biāo)記接口的起始版本。 開發(fā)前請(qǐng)熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[
gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
導(dǎo)入模塊
import abilityAccessCtrl from '@ohos.abilityAccessCtrl'
abilityAccessCtrl.createAtManager
createAtManager(): AtManager
訪問控制管理:獲取訪問控制模塊對(duì)象。
系統(tǒng)能力: SystemCapability.Security.AccessToken
返回值:
類型 | 說明 |
---|---|
[AtManager] | 獲取訪問控制模塊的實(shí)例。 |
示例:
var AtManager = abilityAccessCtrl.createAtManager();
AtManager
管理訪問控制模塊的實(shí)例。
verifyAccessToken
verifyAccessToken(tokenID: number, permissionName: string): Promise
校驗(yàn)應(yīng)用是否授予權(quán)限,使用Promise方式異步返回結(jié)果。
系統(tǒng)能力: SystemCapability.Security.AccessToken
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
tokenID | number | 是 | 要校驗(yàn)的目標(biāo)應(yīng)用的身份標(biāo)識(shí)。 |
permissionName | string | 是 | 需要校驗(yàn)的權(quán)限名稱。 |
返回值:
類型 | 說明 |
---|---|
Promise | Promise實(shí)例,用于獲取異步返回的授權(quán)狀態(tài)結(jié)果。 |
示例:
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
授予應(yīng)用user grant權(quán)限,使用Promise方式異步返回結(jié)果。
需要權(quán)限: ohos.permission.GRANT_SENSITIVE_PERMISSIONS
系統(tǒng)能力: SystemCapability.Security.AccessToken
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
tokenID | number | 是 | 目標(biāo)應(yīng)用的身份標(biāo)識(shí)。 |
permissionName | string | 是 | 被授予的權(quán)限名稱。 |
permissionFlag | number | 是 | 授權(quán)選項(xiàng),1表示下次仍需彈窗,2表示允許、禁止后不再提醒,3表示系統(tǒng)授權(quán)不允許更改。 |
返回值:
類型 | 說明 |
---|---|
Promise | Promise實(shí)例,用于獲取異步返回的授權(quán)操作結(jié)果。 |
示例:
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
授予應(yīng)用user grant權(quán)限,使用callback回調(diào)異步返回結(jié)果。
需要權(quán)限: ohos.permission.GRANT_SENSITIVE_PERMISSIONS
系統(tǒng)能力: SystemCapability.Security.AccessToken
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
tokenID | number | 是 | 目標(biāo)應(yīng)用的身份標(biāo)識(shí)。 |
permissionName | string | 是 | 被授予的權(quán)限名稱。 |
permissionFlag | number | 是 | 授權(quán)選項(xiàng),1表示下次仍需彈窗,2表示允許、禁止后不再提醒,3表示系統(tǒng)授權(quán)不允許更改。 |
callback | AsyncCallback | 是 | 檢查授予應(yīng)用user grant權(quán)限的操作結(jié)果同步的回調(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
撤銷應(yīng)用user grant權(quán)限,使用Promise方式異步返回結(jié)果。
需要權(quán)限: ohos.permission.REVOKE_SENSITIVE_PERMISSIONS
系統(tǒng)能力: SystemCapability.Security.AccessToken
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
tokenID | number | 是 | 目標(biāo)應(yīng)用的身份標(biāo)識(shí)。 |
permissionName | string | 是 | 被撤銷的權(quán)限名稱。 |
permissionFlag | number | 是 | 授權(quán)選項(xiàng),1表示下次仍需彈窗,2表示允許、禁止后不再提醒,3表示系統(tǒng)授權(quán)不允許更改。 |
返回值:
類型 | 說明 |
---|---|
Promise | Promise實(shí)例,用于獲取異步返回的授權(quán)操作結(jié)果。 |
示例:
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
撤銷應(yīng)用user grant權(quán)限,使用callback回調(diào)異步返回結(jié)果。
需要權(quán)限: ohos.permission.REVOKE_SENSITIVE_PERMISSIONS
系統(tǒng)能力: SystemCapability.Security.AccessToken
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
tokenID | number | 是 | 目標(biāo)應(yīng)用的身份標(biāo)識(shí)。 |
permissionName | string | 是 | 被撤銷的權(quán)限名稱。 |
permissionFlag | number | 是 | 授權(quán)選項(xiàng),1表示下次仍需彈窗,2表示允許、禁止后不再提醒,3表示系統(tǒng)授權(quán)不允許更改。 |
callback | AsyncCallback | 是 | 檢查撤銷應(yīng)用user grant權(quán)限的操作結(jié)果同步的回調(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
獲取指定應(yīng)用的指定權(quán)限的flag,使用Promise方式異步返回結(jié)果。
需要權(quán)限: ohos.permission.GET_SENSITIVE_PERMISSIONS or GRANT_SENSITIVE_PERMISSIONS or REVOKE_SENSITIVE_PERMISSIONS
系統(tǒng)能力: SystemCapability.Security.AccessToken
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
tokenID | number | 是 | 目標(biāo)應(yīng)用的身份標(biāo)識(shí)。 |
permissionName | string | 是 | 查詢的權(quán)限名稱。 |
返回值:
類型 | 說明HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿 |
---|---|
Promise | Promise實(shí)例,用于獲取異步返回的查詢結(jié)果。 |
![]() |
示例:
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
表示授權(quán)狀態(tài)的枚舉。
系統(tǒng)能力: 以下各項(xiàng)對(duì)應(yīng)的系統(tǒng)能力均為SystemCapability.Security.AccessToken
名稱 | 默認(rèn)值 | 描述 |
---|---|---|
PERMISSION_DENIED | -1 | 表示未授權(quán)。 |
PERMISSION_GRANTED | 0 | 表示已授權(quán)。 |
審核編輯 黃宇
-
接口
+關(guān)注
關(guān)注
33文章
9005瀏覽量
153780 -
鴻蒙
+關(guān)注
關(guān)注
60文章
2621瀏覽量
44074
發(fā)布評(píng)論請(qǐng)先 登錄
基于Java開發(fā)的鴻蒙網(wǎng)絡(luò)訪問方面的代碼
鴻蒙開發(fā)接口媒體:【@ohos.multimedia.camera (相機(jī)管理)】

鴻蒙實(shí)戰(zhàn)項(xiàng)目開發(fā):【短信服務(wù)】
鴻蒙原生應(yīng)用元服務(wù)-訪問控制(權(quán)限)開發(fā)Stage模型向用戶申請(qǐng)授權(quán)
鴻蒙原生應(yīng)用元服務(wù)-訪問控制(權(quán)限)開發(fā)校驗(yàn)環(huán)節(jié)
鴻蒙原生應(yīng)用元服務(wù)-訪問控制(權(quán)限)開發(fā)應(yīng)用權(quán)限列表一
鴻蒙原生應(yīng)用元服務(wù)-訪問控制(權(quán)限)開發(fā)應(yīng)用權(quán)限列表二
鴻蒙原生應(yīng)用元服務(wù)-訪問控制(權(quán)限)開發(fā)應(yīng)用權(quán)限列表三
鴻蒙原生應(yīng)用元服務(wù)開發(fā)-Web管理位置權(quán)限
基于鴻蒙Next模擬掃圖識(shí)物的一個(gè)過程
綜合訪問控制模型下MIS安全設(shè)計(jì)與實(shí)現(xiàn)
鴻蒙之@ohos.bundle.defaultAppManager (默認(rèn)應(yīng)用管理)

鴻蒙開發(fā)實(shí)戰(zhàn):【文件管理】

鴻蒙開發(fā)文件管理:【@ohos.fileManager (公共文件訪問與管理)】

評(píng)論