Come concedere a un'app Mac l'autorizzazione a leggere l'intero filesystem

13

Ho comprato questa app chiamata Xee dal Mac App Store. Può aprire i file perfettamente bene, ma quando provo a sfogliare una cartella all'interno dell'app Xee, deve richiedere il permesso. (Vedi lo screenshot qui sotto). Devo farlo per ogni cartella la prima volta che lo sfoglio.

Suppongo che questa sia una limitazione imposta dall'app store. Esiste un modo per aggirare questo problema e concedere a un'app (installata sul mio computer) l'autorizzazione per visualizzare qualsiasi directory, o anche per fare tutto ciò che vuole?

    
posta Brian Gordon 31.01.2014 - 09:25
fonte

3 risposte

4

È un po 'complicato ma, ma puoi rimuovere la sandbox modificando il valore <key>com.apple.security.app-sandbox</key> (che è impostato su < true / >) con un editor esadecimale.

In macOS Sierra 10.12 impostalo in < false / >
In macOS El Capitain 10.11 o precedente lo imposta su < fals / >

Per Xee è necessario modificare i seguenti binari:

  • /Applications/Xee³.app/Contents/MacOS/Xee³
  • /Applications/Xee³.app/Contents/Loader/Xee3.ImageLoader

Fonte: link

    
risposta data 11.03.2016 - 10:42
fonte
20

L'app è in modalità sandbox. Ciò significa che l'applicazione è stata firmata con un codice con una serie di diritti. Queste autorizzazioni vengono applicate da Mac OS X. La documentazione per sviluppatori Apple sulla sandboxing fornisce ulteriori dettagli.

È possibile visualizzare le titolarità di sandbox di Xee utilizzando il seguente comando Terminal.app:

codesign --display --entitlements - /Applications/Xee.app

L'articolo di Ole Begemann, Controllo dello stato del codice e dello stato di sandboxing nel codice , spiega di più.

Riduci o escludi i entitlement

Per rimuovere le titolarità, è necessario re- rifare codice firma l'applicazione senza titolarità - utilizzando codesign - oppure elimina completamente la firma del codice dall'applicazione.

Chiedi agli sviluppatori di Xee

Non è consigliabile modificare un'applicazione Mac. Chiedi agli sviluppatori di Xee l'aiuto su come aggirare questo comportamento; solo loro hanno le conoscenze appropriate per risolvere questo problema.

Gli sviluppatori di Xee sembrano essere a conoscenza del problema:

(Note that the App Store version is sandboxed, while the non-App Store trial and full versions are not sandboxed. If you prefer the safety of the OS X sandbox, you should get the App Store version. However, the sandboxed version needs to ask you for permission for certain operations, and if you find this annoying, you should get the non-App Store version.)

Indica a Apple

Considera di fornire feedback ad Apple su questa limitazione e su come limita il tuo flusso di lavoro. Il feedback dei clienti contribuirà a dare forma a ciò che le app Mac App Store possono e non possono fare in futuro. Per ora, le app acquistate tramite Apple Mac App Store sono limitate.

    
risposta data 31.01.2014 - 11:28
fonte
-4

Prova a copiare il contenuto dell'app sul tuo disco rigido e apri da lì. Forse l'app sta proteggendo i propri file da soli.

    
risposta data 31.01.2014 - 10:28
fonte

Leggi altre domande sui tag