Як дізнатися, які права має додаток?


28

Пісочні програми повинні заявити про свої права. Звичайно, це не приносить мені користі, якщо я не можу сказати, які права він декларує. Текстовий редактор, який має права на основне місце розташування, мережевий сервер та мою адресну книгу, без мого відома, може бути набагато гіршим, ніж додаток без коробки.

Як я бачу, які права має додаток?

Відповіді:


35

Після ще кількох пошуків я знайшов відповідь командного рядка:

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

Це виведе друк XML із значеннями, такими як:

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

Для отримання додаткової інформації див https://developer.apple.com/library/archive/qa/qa1798/_index.html#//apple_ref/doc/uid/DTS40014167-CH1-IOS_STEPS

Якщо хтось знає простіший / приємніший спосіб, я хотів би почути це.


1
Також більше документації про це: developer.apple.com/library/content/documentation/Security/…

У Mojave 10.14.4 команда вище друкує зайві 8 байт на початку: fade7171000000fbроблячи XML недійсним. Будь-який спосіб уникнути цього або позбавити його?
luckman212

codesign -d --entitlements - <filepath> 2>&1 | LANG=C LC_CTYPE=C sed 's/^.*\<\?xml/\<\?xml/g' | grep "<.*>" Можливо, є інше рішення, але саме так я знімаю ці байти. Але я не думаю, що це потрібно: ви можете codesignдодаток, вказуючи на xml права, і macOS ігнорує ці байти в будь-якому випадку.
JayB

Додайте двокрапку, щоб пропустити ці байти:codesign -d --entitlements :- /Applications/Whatever.app/
artyom.stv
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.