26 votos

Es allí una manera de proteger con contraseña las aplicaciones individuales?

Es posible proteger con contraseña un Mac específica de la aplicación?

Por ejemplo, estoy interesado en la protección de Correo, porque incluso si usted no puede recuperar mensajes de correo electrónico nuevos, que todavía se pueden leer todos los correos electrónicos recibidos.

Esta no es una pregunta acerca de la seguridad. Se trata de compartir un dispositivo dentro de una familia. No tengo información crucial. Sólo quiero evitar que mi hija o hijo para enviar accidentalmente correos desde mi cuenta o impedir que leer algunos de ellos.

27voto

Christopher Scott Puntos 665

Respecto a su comentario sobre la respuesta de Pablo, queriendo salir de su computadora por un momento: usted tiene para bloquear el equipo. Período.

Abra Preferencias del Sistema, haga clic en Seguridad (fila superior, la segunda a la última opción), bajo la pestaña "General", marque la casilla "Requerir contraseña [inmediatamente] después de dormir o el protector de pantalla comienza".

Entonces, cuando usted vaya a caminar lejos de su computadora;

Ctrl ⌃+Mayús ⇧+Eject ⏏

(Notas adicionales: haga Clic en la línea de arriba.)

Bloquear tu Mac. A pie de distancia. Volver, introduzca la contraseña para desbloquearlo. Asegurado de la consola.

10voto

ggasp Puntos 608

Sólo puede establecer controles parentales en la cuenta y, a continuación, determinar qué aplicaciones se pueden utilizar.

Alternativamente, usted puede establecer una contraseña en su protector de pantalla y también definir un adecuado "esquina caliente" para activar el protector de pantalla - de esa manera cuando usted se aleja de su computadora que usted puede simplemente mover el ratón en la esquina caliente efectivamente bloquear la pantalla, que requieren de una contraseña para obtener acceso.

9voto

erichui Puntos 1488

Es posible, mediante secuencias de comandos.

En primer lugar, debe activar la secuencia de comandos en el menú de OS X de la barra de menú. Leer la "secuencia de Comandos de Menú de la sección" aquí: Activar la secuencia de Comandos de Menú

Ahora abre tu Biblioteca/carpeta de secuencias de comandos y crear un archivo llamado "run_with_password.rb" con estos contenidos (cambio de "johndoe" a su nombre de usuario):

#!/usr/bin/env ruby
# run an app at lower privilege

require 'etc'
require 'find'

# Note: anyone with sudo access will be able to run as this user. But they could do that anyway.
# run 'id' at the terminal to find out what your username is.
RUN_USER = 'johndoe'

def get_root_info
  root_entry = Etc.getpwnam('root')
  return root_entry.uid, root_entry.gid
end

ROOT_UID, ROOT_GID = get_root_info

def ensure_root
  Process.uid = ROOT_UID
  Process.gid = ROOT_GID
end

def print_user_info
  [
   [:uid, Process.uid],
   [:gid, Process.gid],
   [:euid, Process.euid],
   [:egid, Process.egid],
  ].each do |arr|
    $stderr.puts arr.inspect
  end
end

def set_effective(euid, egid)
  $stderr.puts "setting effective to #{[euid, egid].inspect}"  if $DEBUG
  # must set group first
  Process.egid = egid
  Process.euid = euid
end

def do_privileged(&block)
  orig_euid = Process.euid
  orig_egid = Process.egid
  begin
    $stderr.puts "raising privileges"  if $DEBUG
    set_effective(ROOT_UID, ROOT_GID)
    yield orig_euid, orig_egid
  ensure
    $stderr.puts "lowering privileges"  if $DEBUG
    set_effective(orig_euid, orig_egid)
  end
end

# must be called after ROOT_UID, ROOT_GID are set
def chmod_files_in_dir(mode, dir)
  mode_str = nil
  case mode
  when Integer
    mode_str = '%o' % mode
  when String
    mode_str = mode
  else
    raise TypeError
  end
  chmod_proc = proc do
    Find.find(dir) {|entry|
      if File.directory?(entry) and entry != dir
        Find.prune  # don't recurse into subdirs
      elsif File.file?(entry)
        $stderr.puts "chmod #{mode_str} #{entry}"  if $DEBUG
        system 'chmod', mode_str, entry
      end
    }
  end
  # assume that if dir is owned by root, the executables are also.
  if File.stat(dir).uid == ROOT_UID
    do_privileged(&chmod_proc)
  else
    chmod_proc.call
  end
end

def main(argv)
  # Important: this is to abort if we're not running as root.
  ensure_root

  app_path = argv.shift or raise "Need path to .app file, e.g. /Applications/Mail.app"
  app_macos_dir = File.join(app_path, 'Contents/MacOS')
  File.directory?(app_path) or raise "#{app_path} is not an app bundle"
  File.directory?(app_macos_dir) or raise "#{app_path} bundle doesn't have expected MacOS structure"

  pw_entry = Etc.getpwnam(RUN_USER)
  run_uid = pw_entry.uid
  run_gid = pw_entry.gid


  if $DEBUG
    $stderr.puts [:run_uid, run_uid].inspect
    $stderr.puts [:run_gid, run_gid].inspect
    print_user_info
  end

  # Effectively become RUN_USER
  set_effective(run_uid, run_gid)

  if $DEBUG
    print_user_info
  end

  begin
    chmod_files_in_dir('+x', app_macos_dir)
    # 'open' is asynchronous, so the ensure will run immediately after, and before the app exits.
    $stderr.puts "Running app: #{app_path}"  if $DEBUG
    system 'open', app_path
  ensure
    chmod_files_in_dir('-x', app_macos_dir)
  end
end

if __FILE__ == $0
  $DEBUG = false
  main(ARGV)
end

A continuación, inicie el Editor de Comandos y pegar en este código (de nuevo el cambio de johndoe a tu nombre de usuario):

do shell script "ruby /Users/johndoe/Library/Scripts/run_with_password.rb /Applications/Mail.app" with administrator privileges

Guarde el archivo en la Biblioteca/Scripts como "mail_with_password", asegurándose de que el Formato de Archivo es "secuencia de Comandos".

Ahora "mail_with_password" aparecerá en el menú de scripts. Cada vez que se ejecute, se le pedirá su contraseña (así como algunos instaladores de hacer). Después de que se hecho a correr, deshabilitar el acceso regular de la aplicación de Correo. Para ejecutar la secuencia de comandos una vez, a continuación, intente ejecutar la aplicación de Correo. No se ejecutará. Tenga en cuenta que esto significa que TODOS los usuarios de su máquina se impide la ejecución de Correo directamente, no sólo de su usuario.

Si desea permitir que el Correo que se ejecuta normalmente de nuevo, ejecute este comando en el Terminal:

sudo chmod +x /Applications/Mail.app/Contents/MacOS/Mail

Usted podría ser capaz de omitir el "sudo". El uso de sudo si usted recibe "Operación no permitida". Tenga en cuenta que sudo le pedirá su contraseña para permitir la operación privilegiada.

Advertencias

  1. Si no se necesita el "sudo" comando de arriba para hacer el chmod, que significa un experto usuario podría ser capaz de averiguar cómo habilitar la aplicación de Correo de nuevo. Usted puede reforzar la seguridad por cambiar el propietario del MacOS/archivo de Correo de la root. Que queda como ejercicio para el lector.
  2. Si alguien es capaz de copiar la aplicación de Correo de su ordenador (por ejemplo, a través de unidad USB) todavía pueden obtener acceso a su correo.
  3. El script de ruby está destinado a trabajar para la mayoría de OS X aplicación de paquetes. No me recomienda ajustar el script de ruby a menos que realmente sepas lo que estás haciendo, porque se trata de hacer ciertas cosas como root (el usuario con privilegios). El ajuste de la applescript código debe ser inofensivo; pero usted debe saber cómo ajustar el comando chmod para hacer que tu aplicación directamente ejecutables de nuevo.
  4. Si la ruta de acceso de la aplicación en el archivo applescript tiene espacios u otros caracteres especiales, tendrás que hacer algo como poner comillas simples alrededor de todo el camino.
  5. Edit: Usuario Austin sugiere que este procedimiento no protege a la .emlx archivos. Yo en realidad no utilizar la aplicación de Correo, así que no estoy familiarizado con el almacenamiento de datos. Problemas similares se aplican a todas las aplicaciones - porque esta solución no ocultar los datos del usuario.

La Paranoia

Si alguien que conoce a ruby obtener acceso a su usuario que ha iniciado sesión, se podría modificar el script de ruby en una manera que da rienda suelta a todo tipo de estragos cuando se ejecuta la secuencia de comandos, ya que se ejecuta como root parte del tiempo. Si usted piensa que esto podría ocurrir, usted debe hacer que el script sólo modificable por la root. Usted también tendrá que asegurarse de que alguien no reemplazar la secuencia de comandos con sus propias - se puede hacer esto si la carpeta es modificable por usted. Si estás empezando a tener miedo por estas advertencias y no saben cómo protegerse a usted mismo, usted probablemente debería olvidarse de esta solución y sólo recuerda para bloquear la pantalla cuando deje el equipo.

5voto

Oskar Puntos 1242

Sí - varias maneras de proteger la contraseña de su correo de prácticas. Puesto que usted está preocupado acerca de los niños/miembros de la familia, la más sencilla podría ser simplemente restringir las aplicaciones utilizando el control Parental en tu cuenta. En algún momento puedan tener sus propias cuentas, y usted puede bloquear toda la cuenta.


Estas son las opciones que yo veo como viable para el caso general de bloqueo de aplicaciones o los datos de las aplicaciones pueden tener acceso.

  1. Hacer que tu cuenta protegida de los padres de la cuenta y de la lista blanca las aplicaciones que desea permitir. Usted sabrá que la separan de administración de usuario/contraseña para permitir el lanzamiento de prohibido aplicaciones. Voila - cualquier aplicación que desee ahora está protegido por contraseña.

  2. Mover la aplicación en modo protegido por contraseña de la imagen de disco y, a continuación, hacer un alias para almacenar en la carpeta de Aplicaciones. (eliminar el original de la primera aplicación) Cuando algún programa intenta acceder a la aplicación, usted consigue una oportunidad para introducir una contraseña y el buscador de montar la imagen de disco. También puede script de cambios de permisos y otras técnicas de engaño para que solicite una contraseña antes de ejecutar la secuencia de comandos para hacer que la aplicación ejecutable de nuevo.

  3. Almacenar los datos de la aplicación en un cifrado y protegido por contraseña de la imagen de disco. Aquí están algunas de las aplicaciones comunes y las carpetas donde se almacenan los datos del usuario.

  4. Tienda de su aplicación de correo en una unidad extraíble - hay una casa de campo de la industria acerca de las decisiones independientes de los paquetes de aplicación para ejecutar aplicaciones desde unidades USB.

Tenga en cuenta cosas como el centro de atención y otras aplicaciones que utilizan los marcos dentro de las aplicaciones no funciona tan bien hasta que las imágenes están montadas. Si la contraseña de usuario de la seguridad de la gente que no quiere ver los datos), entonces usted puede guardar la imagen de disco de contraseñas en el llavero.

También - a menos que usted proteger los archivos de datos - seguridad por oscuridad y alguien que pueda copiar los datos en otro lugar, o simplemente una mirada desde spotlight o de otras aplicaciones, como la edición de texto. También podría traer una copia del correo electrónico (o cualquier otro) de la aplicación desde otro equipo. Las aplicaciones se pueden ejecutar desde cualquier lugar y no sólo a la carpeta de Aplicaciones una vez que un usuario admin bendice para la primera ejecución en el sistema.

Por lo tanto #3 es el único camino a seguir. Bloqueo de seguridad de sus datos y no se preocupe acerca de las aplicaciones.

5voto

Styler2go Puntos 61

Aquí está una Mac utilidad que va a hacer lo que estás pidiendo. Se puede proteger con contraseña las aplicaciones individuales. También, se puede establecer un valor de tiempo de espera que le salga de la aplicación después de estar inactivo durante el tiempo seleccionado.

Mac App Blocker

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: