Comment savoir quels sont les droits d'une application?

28

Les applications en bac à sable doivent déclarer leurs droits. Bien sûr, cela ne me fait aucun bien si je ne peux pas dire quels droits il déclare. Un éditeur de texte qui a des droits pour Core Location, Network Server et mon carnet d'adresses, à mon insu, pourrait être bien pire qu'une application sans bac à sable.

Comment puis-je voir les droits d'une application?

Ken
la source

Réponses:

35

Après quelques recherches supplémentaires, j'ai trouvé une réponse en ligne de commande:

codesign -d --entitlements :- /Applications/Whatever.app/

Cela imprimera une liste XML avec des valeurs comme:

<key>com.apple.security.app-sandbox</key>
<true/>
<key>com.apple.security.files.user-selected.read-write</key>
<true/>

Pour plus d'informations, voir https://developer.apple.com/library/archive/qa/qa1798/_index.html#//apple_ref/doc/uid/DTS40014167-CH1-IOS_STEPS

Si quelqu'un connaît une manière plus facile / plus agréable, j'aimerais l'entendre.

Ken
la source
1
Aussi plus de documentation à ce sujet: developer.apple.com/library/content/documentation/Security/…
Sur Mojave 10.14.4, la commande ci-dessus imprime 8 octets supplémentaires au début:, fade7171000000fbrendant le XML invalide. Est-il possible d'éviter cela ou de le retirer?
luckman212
codesign -d --entitlements - <filepath> 2>&1 | LANG=C LC_CTYPE=C sed 's/^.*\<\?xml/\<\?xml/g' | grep "<.*>" Il y a peut-être une autre solution, mais c'est ainsi que je supprime ces octets. Mais je ne pense pas que ce soit nécessaire: vous pouvez codesignune application en pointant vers un fichier XML de droits, et macOS ignorera de toute façon ces octets.
JayB
Ajoutez deux points pour omettre ces octets:codesign -d --entitlements :- /Applications/Whatever.app/
artyom.stv