• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# atm工具
2
3Access Token Manager (程序访问控制管理工具,简称atm工具),是用于查询<!--Del-->或设置<!--DelEnd-->应用进程的权限、使用类型等信息的工具,为开发者提供了根据tokenid、包名、进程名等信息进行访问控制管理的能力。
4
5## 环境说明
6在使用本工具前,开发者需要先获取[hdc工具](../dfx/hdc.md),执行hdc shell。
7
8## atm工具命令列表
9
10| 命令                | 描述 |
11| ------------------- | -----------|
12| help                | 帮助命令,显示atm支持的命令信息。 |
13| <!--DelRow-->perm   | 权限命令,为应用进程授予或取消权限。 |
14| <!--DelRow-->toggle | 弹窗开关/权限使用记录开关状态命令,设置或获取权限弹窗/权限使用记录开关状态。 此命令仅在root版本下可用。|
15| dump                | 查询命令,用于查询访问控制相关数据信息。 |
16
17## 帮助命令
18
19```bash
20# 显示帮助信息
21atm help
22```
23
24
25<!--Del-->
26
27## 权限命令
28```bash
29atm perm [-h] [-g -i <token-id> -p <permission-name>] [-c -i <token-id> -p <permission-name>]
30```
31
32**权限命令参数列表**
33| 参数                                               | 参数说明                  |
34| -------------------------------------------------- | ---------------------- |
35| -h                                        | 帮助信息。 | atm perm支持的命令集合。 |
36| -g&nbsp;-i \<token-id\>&nbsp;-p \<permission-name\> | -g、-i、-p均为必选参数,通过应用进程的tokenid授予指定权限。返回是否成功。    |
37| -c&nbsp;-i \<token-id\>&nbsp;-p \<permission-name\> | -c、-i、-p均为必选参数,通过应用进程的tokenid取消指定权限。返回是否成功。    |
38
39示例:
40
41```bash
42# 显示atm perm的帮助信息
43atm perm -h
44
45# 为应用进程授予相机权限
46atm perm -g -i ********* -p ohos.permission.CAMERA
47
48# 为应用进程取消相机权限
49atm perm -c -i ********* -p ohos.permission.CAMERA
50```
51
52
53## 弹窗开关状态命令
54
55```bash
56atm toggle [-h] [-r -s -i <user-id> -p <permission-name> -k <status>] [-r -o -i <user-id> -p <permission-name>]
57```
58**弹窗开关状态命令参数列表**
59
60| 参数                                                           | 参数说明                                |
61| ----------------------------------------------------------------- | ----------------------------------- |
62| -h                                                     | 帮助信息。              |
63| -r&nbsp;-s&nbsp;-i \<user-id\>&nbsp;-p \<permission-name\>&nbsp;-k \<status\> | -r、-s、-i、-p、-k均为必选参数,在指定用户下,设置指定权限的弹窗开关状态为status。返回是否成功。 |
64| -r&nbsp;-o&nbsp;-i \<user-id\>&nbsp;-p \<permission-name\> | -r、-o、-i、-p均为必选参数,在指定用户下,返回指定权限的弹窗开关状态。 |
65
66示例:
67
68```bash
69# 显示atm toggle的帮助信息
70atm toggle -h
71
72# 设置用户0下相机权限的弹窗开关状态为开启
73atm toggle -r -s -i 0 -p ohos.permission.CAMERA -k 1
74
75# 获取用户0下相机权限的弹窗开关状态
76atm toggle -r -o -i 0 -p ohos.permission.CAMERA
77```
78
79## 权限使用记录开关状态命令
80
81```bash
82atm toggle [-h] [-u -s -i <user-id> -k <status>] [-u -o -i <user-id>]
83```
84**权限使用记录开关状态命令参数列表**
85
86| 参数                                                           | 参数说明                                |
87| ----------------------------------------------------------------- | ----------------------------------- |
88| -h                                                     | 帮助信息。              |
89| -u&nbsp;-s&nbsp;-i \<user-id\>&nbsp;-k \<status\> | -u、-s、-i、-k均为必选参数,在指定用户下,设置权限使用记录开关状态为status。返回是否成功。 |
90| -u&nbsp;-o&nbsp;-i \<user-id\>&nbsp; | -u、-o、-i均为必选参数,在指定用户下,返回权限使用记录开关状态。 |
91
92示例:
93
94```bash
95# 显示atm toggle的帮助信息
96atm toggle -h
97
98# 设置用户0下权限使用记录开关状态为开启
99atm toggle -u -s -i 0 -k 1
100
101# 获取用户0下权限使用记录开关状态
102atm toggle -u -o -i 0
103```
104
105<!--DelEnd-->
106
107
108## 查询命令
109
110<!--RP1-->
111```bash
112atm dump [-h] [-t [-i <token-id>] [-b <bundle-name>] [-n <process-name>]] [-r [-i <token-id>] [-p <permission-name>]] [-v [-i <token-id>] [-p <permission-name>]]
113```
114<!--RP1End-->
115
116下表所列命令中,-t、<!--Del-->-r、<!--DelEnd-->-v为必选参数,-i、-b、-n、-p为可选参数。对<!--Del-->atm dump -r和<!--DelEnd-->atm dump -v命令,-i和-p参数可以组合使用;对atm dump -t命令,-i、-b、-n参数只能单独使用。
117
118| 参数                                          | 参数说明                                                 |
119| ----------------------------------------------- | ---------------------------------------------------- |
120| -h                                     | 帮助信息。                              |
121| -t                                     | 必选参数,查询系统中所有应用进程信息。                             |
122| -t&nbsp;-i \<token-id\>                     | 可选参数,通过应用进程的tokenid,查询该应用的基本信息以及对应的权限信息。             |
123| -t&nbsp;-b \<bundle-name\>                  |  可选参数,通过应用进程的包名bundle-name,查询该应用的基本信息以及对应的权限信息。     |
124| -t&nbsp;-n \<process-name\>                 |  可选参数,通过应用进程的进程名process-name,查询该应用的基本信息以及对应的权限信息。  |
125| <!--DelRow-->-r                        |  必选参数,查询系统内的所有权限使用记录。                           |
126| <!--DelRow-->-r&nbsp;-i \<token-id\>        | 可选参数,通过应用进程的tokenid,查询该应用的权限使用记录。        |
127| <!--DelRow-->-r&nbsp;-p \<permission-name\> | 可选参数,通过权限名,查询该权限的使用记录。                        |
128| -v                                     | 必选参数,查询系统中所有应用进程的权限使用类型。                    |
129| -v&nbsp;-i \<token-id\>                     | 可选参数,通过应用进程的tokenid,查询该应用的权限使用类型。         |
130| -v&nbsp;-p \<permission-name\>              | 可选参数,通过权限名,查询该权限的使用类型。                        |
131
132示例:
133
134```bash
135#显示atm dump的帮助信息
136atm dump -h
137
138#查询系统中所有应用进程的tokenid和包名
139atm dump -t
140
141#按tokenid查询权限信息
142atm dump -t -i *********
143
144#按包名查询权限信息
145atm dump -t -b ohos.telephony.resources
146
147#按进程名查询权限信息
148atm dump -t -n *********
149
150#查询所有应用的权限使用类型
151atm dump -v
152
153#按应用tokenid查询权限使用类型
154atm dump -v -i *********
155
156#按权限名查询权限使用类型
157atm dump -v -p ohos.permission.CAMERA
158
159#按应用tokenid和权限名查询权限使用类型
160atm dump -v -i ********* -p ohos.permission.CAMERA
161```
162
163<!--Del-->
164```bash
165#查询系统内的所有权限使用记录
166atm dump -r
167
168#按应用tokenid查询权限使用记录
169atm dump -r -i *********
170
171#按权限名查询权限使用记录
172atm dump -r -p ohos.permission.CAMERA
173
174#按应用tokenid和权限名查询权限使用记录
175atm dump -r -i ********* -p ohos.permission.CAMERA
176```
177<!--DelEnd-->