2 votos

Sandbox en Mac OS X

No puedo usar el comando sandbox-exec como esperaba.

El problema es que no puedo aplicar un perfil personalizado con el interruptor -f: obtengo un error de "operación no permitida" que no pude rastrear a nada útil cuando busqué en línea una solución.

$ sandbox-exec -f alfred-profile.sb /Applications/Alfred.app/Contents/MacOS/Alfred

sandbox-exec: /Applications/Alfred.app/Contents/MacOS/Alfred: Operación no permitida

Sin embargo, es posible ejecutar perfiles predefinidos con el interruptor -n. El siguiente ejemplo se ejecuta correctamente (inicia Alfred y no permite que el proceso acceda a la red).

$ sandbox-exec -n no-network /Applications/Alfred.app/Contents/MacOS/Alfred

2voto

Raj J Puntos 617

¿Cuáles son los contenidos de alfred-profile.sb? Creo que has denegado/no permitido explícitamente una operación que es requerida para que la aplicación pueda iniciar. Revisaría eso primero, si es posible.

Considera dos perfiles:

  1. Un perfil permisivo, good_profile.sb:

    (version 1)
    (allow default)
  2. Un perfil restrictivo, bad_profile.sb:

    (version 1)
    (deny default)

Nota: un perfil que consiste solo de (version 1) mostrará el mismo comportamiento, ya que la denegación es el comportamiento por defecto del sandbox.

Ahora, cuando ejecuto el perfil permisivo en mi máquina, obtengo:

sandbox-exec -f good_profile.sb /sbin/ping www.google.com
PING www.google.com (216.58.194.196): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3
^C
--- www.google.com ping statistics ---
5 packets transmitted, 0 packets received, 100.0% packet loss

Pero cuando ejecuto el perfil restringido obtengo:

sandbox-exec -f bad_profile.sb /sbin/ping www.google.com
sandbox-exec: /sbin/ping: Operación no permitida

En ambos casos, el perfil fue cargado, pero en el segundo caso al proceso se le negaron los permisos necesarios para ejecutarse y por lo tanto nunca se inició.

0 votos

Gracias @Testing! Mi alfred-profile.sb era de hecho demasiado restrictivo.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X