domingo, diciembre 27, 2009

Control de Cuentas de Usuario (VI de VI)

************************************************************************************************
- Control de Cuentas de Usuario (I de VI)
- Control de Cuentas de Usuario (II de VI)
- Control de Cuentas de Usuario (III de VI)
- Control de Cuentas de Usuario (IV de VI)
- Control de Cuentas de Usuario (V de VI)
- Control de Cuentas de Usuario (VI de VI)
************************************************************************************************

La comparación con SUDO

“Sudo (su "do") allows a system administrator to give certain users (or groups of users) the ability to run some (or all) commands as root while logging all commands and arguments.”

Así se resume, en su primera frase, el proyecto SUDO. En un proyecto que permite a los administradores dejar a ciertos usuarios o grupos de usuarios la capacidad de ejecutar comandos como root, eso sí, registrando todas estas acciones para su análisis posterior.

Ésta es una diferencia fundamental con el funcionamiento de UAC. En sudo todas las acciones administrativas se van a gestionar con el fichero de configuración de sudoers que define que usuarios van a poder ejecutar que acciones con la cuenta root. Esto añade dos puntos de configuración de cuentas. Por un lado, ciertos grupos y usuarios, por el hecho de ser los owners de ciertos comandos ya tienen privilegios adquiridos y, con el fichero sudoers se añaden más capacidades a los usuarios limitados. Es decir, obtener una lista completa de las acciones que pueden ser realizadas por un usuario no es igual a ver los privilegios concedidos en sudoers.
UAC no es para nada similar a este comportamiento ya que UAC protege los propios privilegios de la cuenta y no las veces o para qué cosas podría utilizar la cuenta de administrador. UAC permite aplicar el Mínimo Privilegio Posible a tus propios privilegios. Sudo NO.

Si un usuario tiene privilegios de cuenta sudo no se los protege, como mucho podría prohibirle usar los privilegios de root siempre, pero nunca restringir la ejecución de sus acciones con menos privilegios de los que la cuenta tiene por sí misma. Es decir, si un usuario tiene acceso a manipular /etc/shadow y ejecuta un programa del sistema suplantado que crea por debajo un usuario, este programa tendría la posibilidad de hacerlo. Con UAC no.

Luego, se podría resumir como que Sudo utiliza una aproximación al concepto del Mínimo Privilegio Posible totalmente distinta a UAC. Sudo lo hace intentando restringir qué cuentas pueden ser root para qué cosas mientras que UAC lo hace gestionando cada privilegio de la misma cuenta evaluando el MPP para cada acción del usuario.

Para la restricción de las acciones de las cuentas de usuario en los sistemas MS Windows, desde hace mucho tiempo, se utiliza un grupo de roles dentro del sistema llamados Built-in que tienen segmentadas las diferentes opciones de comandos de administración del sistema. UAC también protege el uso de cualquiera de esos privilegios dentro del sistema operativo.


Grupos de usuarios con permisos especiales en Windows

Las patentes

El tema de las patentes de software es siempre un tema delicado y polémico, pero en los Estados Unidos es el día a día entre la industria tecnológica (e incluyo aquí cualquier aplicación que se haga de la misma a otros campos como la medicina, biología o ponga-usted-su-rama-científica aquí). Este funcionamiento, como ya es sabido por todas ellas, puede llevar a la farragosa historia entre Adobe y Macromedia [1] [2] de la que salieron airosos mediante una fusión o al “curioso” acuerdo entre Spectra y Suse.

El caso es que tanto SUDO como UAC tienen sus patentes que les cubren ante una posible demanda legal. Patentes reconocidas ambas e independientes entre ellas. Si después de 6 post de este artículo aún no has visto que son dos formas distintas de intentar conseguir un mismo objetivo, la aplicación del Mínimo Privilegio Posible, yo ya no puedo hacer más.

- Patente que cubre SUDO
- Patente que cubre a UAC

Conclusiones finales

Gracias al funcionamiento de UAC es posible tener una única cuenta en el sistema que funcione como usuario y como administrador al mismo tiempo sin ningún riesgo de ejecución privilegiada sin tu conocimiento. Gracias a esto, es posible tener deshabilitadas el resto de cuentas dentro de tu equipo.


1 cuenta para gobernarlos a todos

UAC en los sistemas Microsoft Windows no ha venido como una prueba a ver qué tal sale y ya si no gusta lo quitamos. UAC ha venido para quedarse y se está muy contento con él. Seguramente se siga trabajando en refinar su uso, re-factorizar más las APIs, mejorar la interacción con el usuario y las opciones de administración para poder cubrir mejor los casos degenerados. Se ha seguido mejorando en las opciones y las herramientas de compatibilidad para las aplicaciones antiguas y que así su interacción con UAC sea lo más satisfactoria para el usuario. Todo es mejorable, y gracias a eso no nos hemos quedado en MS-DOS 6.22 [rulez!!]

Si el entorno de tus usuarios es delicado o tus familiares y amigos tienen tendencia al doble clic masivo, busca la mejor configuración para lograr el equilibrio en tu red con las políticas de UAC que vimos en el post anterior.

Pero sobretodo espero que, después de estas parrafadas, cuando alguien te recomiende que desactives el UAC le mandes a la playa o que cuando algún familiar te diga que si debe quitar el UAC le digas que no y le expliques que UAC no es COCO sino que está para protegerle de los auténticos “cocos de la red”.

Saludos Malignos!

************************************************************************************************
- Control de Cuentas de Usuario (I de VI)
- Control de Cuentas de Usuario (II de VI)
- Control de Cuentas de Usuario (III de VI)
- Control de Cuentas de Usuario (IV de VI)
- Control de Cuentas de Usuario (V de VI)
- Control de Cuentas de Usuario (VI de VI)
************************************************************************************************

9 comentarios:

  1. Hasta mi jefe director regional de MS lo desactiva (increible), yo como loco les digo que así no es... pero no hay quien les haga cambiar...
    "Debes habilitar UAC", ¿Que es eso?
    Frustrante....

    ResponderEliminar
  2. que podemos pensar de uac si ni las mismas personas de microsoft lo usan que confiansa nos dan a nosotros lo usuarios

    ResponderEliminar
  3. @Anonimo

    No creo que se trate de confianza o desconfianza, si no de logica/sentido comun. Si realmente sabes para que sirve y lo que UAC esta haciendo por ti dejalo activado. Si te quieres sumar a la gente que lo desactiva (por atrevimiento, o, simplemente ignarancia) alla tu.

    ResponderEliminar
  4. Se dice que la inseguridad no se percibe hasta que no tienes el conocimiento necesario o suficiente de los sistemas x...

    @Anonimo

    es fácil chuparte el dedo y en función de la dirección del viento, y de tu confianza interior, tomar una decisión...después están aquellos que realizan sus acciones en base a unas condiciones, normas, y buenas prácticas(estos si tienen futuro)

    Le recomiendo señor anónimo que sea lea los post sobre UAC, al menos para que entienda los riesgos y los matices de los que hablamos.

    UAC es un gran avance.

    ResponderEliminar
  5. @Yo anónimo 1
    Obviamente, me refiero a la ignorancia del sistema en si.
    Muchas personas no saben manejar Windows desde que salio el Windows 2000, Se quedaron en 98 y milenium.
    Algunos hasta tienen blog y dicen que utilizan linux (mas avanzados) pero ignoran como manejar un Windows.

    ResponderEliminar
  6. Chema, luego de un tiempo vuelvo a escribir un comentario en el blog.
    Quiero felicitarte porque has alcanzado el punto justo de explicación técnica junto con lenguaje entendible a los no-técnicos (ojo!, no quiere decir tecnicoless).
    UAC es una funcionalidad junto con una filosofía de uso (o costumbre) y has sabido como explicarlo de manera magistral (según mi criterio).

    Desde Windows Vista me interesé en su funcionamiento y estoy más que satisfecho con los resultados obtenidos.

    En Argentina quien se precie de Administrador, tuvo que lidiar con estos temas con el famoso sistema de gestión Tango, que "requiere" permisos de administrador para su ejecución (mucho sufrimiento en Windows XP).

    Saludos e ignora los comentarios irrelevantes

    ResponderEliminar
  7. De cara a los desarrolladores de programas es un gran incordio, sobretodo el sistema de virtualstore cuando trabajas con varios usuarios en el mismo PC. Porque cuando un programa guarda un archivo lo hace en un directorio especifico del usuario, cuando otro usuario quiere abrir el archivo no lo encuentra y empiezan a llamar los usuarios que les ha desaparecido el archivo, que el programa no funciona, ...
    claro que está explicado en el manual que si tienes activado el UAC has de dar permisos expresos al usuario en la carpeta donde guardes los datos pero reconozcamoslo, nadie se lee las ayudas.

    ResponderEliminar
  8. Para mi UAC debería de preguntar mucho más, se queda corto y bendita su aparición después de Windows XP, parece que a la gente le cuesta mucho dar unos clics

    ResponderEliminar