blob: 8e681b1d1045476864ad98a40e474972f1d34d4b [file] [log] [blame]
Alex Klyubinf5446eb2017-03-23 14:27:32 -07001typeattribute keystore coredomain;
2
dcashmancc39f632016-07-22 13:13:11 -07003init_daemon_domain(keystore)
Alex Klyubin53656c12017-04-13 19:05:27 -07004
5# talk to keymaster
6hal_client_domain(keystore, hal_keymaster)
7
Janis Danisevskis97c56bd2018-01-09 17:42:53 -05008# talk to confirmationui
9hal_client_domain(keystore, hal_confirmationui)
10
Janis Danisevskisbd464a92020-08-24 07:52:32 -070011# talk to keymint
12hal_client_domain(keystore, hal_keymint)
13
Janis Danisevskis97c56bd2018-01-09 17:42:53 -050014# This is used for the ConfirmationUI async callback.
15allow keystore platform_app:binder call;
16
Pavel Grafovc5b33302018-01-24 19:49:18 +000017# Allow to check whether security logging is enabled.
18get_prop(keystore, device_logging_prop)
Janis Danisevskisc40681f2020-07-25 13:02:29 -070019
Max Biresaaacfdb2022-02-01 21:15:44 -080020# Allow keystore to check if the system is rkp only.
21get_prop(keystore, remote_prov_prop)
22
Hasini Gunasinghe0112daa2020-06-10 23:34:41 +000023# Allow keystore to write to statsd.
24unix_socket_send(keystore, statsdw, statsd)
Xin Li11da9e62020-08-29 01:45:24 -070025
Janis Danisevskisc40681f2020-07-25 13:02:29 -070026# Keystore need access to the keystore_key context files to load the keystore key backend.
27allow keystore keystore2_key_contexts_file:file r_file_perms;
Hasini Gunasinghe83e1f142020-06-10 21:10:02 +000028
Paul Crowley283aef22022-08-22 09:00:25 -070029# Allow keystore to listen to changing boot levels
Paul Crowleyb0c55712021-02-23 08:40:05 -080030get_prop(keystore, keystore_listen_prop)
Satya Tangiralaa9990042021-03-01 02:53:46 -080031
Paul Crowley4a794522021-06-13 09:56:33 -070032# Keystore needs to transfer binder references to vold so that it
Satya Tangiralaa9990042021-03-01 02:53:46 -080033# can call keystore methods on those references.
34allow keystore vold:binder transfer;
Hasini Gunasinghe4fa6b1a2021-07-02 23:14:50 +000035
36# Only keystore can set keystore.crash_count system property. Since init is allowed to set any
37# system property, an exception is added for init as well.
38set_prop(keystore, keystore_crash_prop)
39neverallow { domain -keystore -init } keystore_crash_prop:property_service set;