Vamos a suponer que yo no sé mucho acerca de Kerberos – sólo lo básico.

Tengo…

  • Debian Linux 2.6 Servidor Web
    • Apache 2.2
      • mod_auth_kerb/5.3
      • PHP/5.2
  • una (de trabajo) de Kerberos
  • Cliente De Windows
    • Firefox 3
    • una sesión en identity «[email protected]» en el MIT de la Identidad de Red Administrador de

¿Cómo puedo usar esta información en un script de PHP, por lo tanto no necesita iniciar sesión en el sitio web, si el visitante tiene un ticket de kerberos como que? No quiero Apache para manejar la autenticación. Necesito saber qué usuario está accediendo al sitio a través de PHP.

Es eso posible? Si es así: ¿Cómo?

Lo que he encontrado hasta ahora: tengo que «habilitar» el dominio en Firefox.

Sin embargo de eso se trata…

Sería inteligente para utilizar Kerberos V el servidor de administración?

OriginalEl autor BlaM | 2008-12-23

2 Comentarios

  1. 3

    No estoy seguro de si esto va a ayudar, pero parece que Apache enviar PHP el nombre de usuario de la información con la modauthkerb paquete si el uso de la KrbSaveCredentials parámetro. Usted debe obtener dos variables globales en php:

     $_SERVER['REMOTE_USER']
     $_SERVER['KRB5CCNAME']

    http://archives.postgresql.org/pgsql-admin/2004-08/msg00144.php parece que tiene este trabajo.

    De esa manera si usted puede ver lo que el usuario es que éste no es un requisito que php realmente realiza la autenticación.

    OriginalEl autor Cetra

  2. 1

    mod_auth_kerb va a manejar para usted autenticación real. Después de esto, habrá que establecer REMOTE_USER y KRB5CCNAME variables ambientales. Tenga en cuenta que hay algunas advertencias:

    • mod_auth_kerb puede hacer la traducción entre principal de Kerberos y nombre de usuario local si Krb5AuthToLocal opción está habilitada.
    • Si Krb5AuthToLocal está habilitada, cuando la autenticación se realiza correctamente, mod_auth_kerb se llame biblioteca Kerberos para realizar la traducción de una autentica nombre para un local de nombre principal de Kerberos no es siempre el mismo como usuario en el sistema operativo (puede asignar a los directores de los nombres de usuario).
    • Cuando Kerberos del MIT está en uso, esta asignación se realiza con la ayuda de auth_to_local reglas en /etc/krb5.conf, consulte krb5.conf página de manual para más detalles.
    • mod_auth_kerb tiene un error que resulta nombre local no debe tener más nombre que el director sí mismo. Esto es generalmente cierto para los directores de un defecto reino, ya que se presentó sin realm, es decir, ‘usuario’ en lugar de ‘[email protected]». Sin embargo, si usted tiene varias de confianza de los reinos, los usuarios no predeterminado reinos se mostrará como ‘[email protected]’ y, a continuación, mod_auth_kerb se asuste. Este error debe ser corregido en Fedora 18+ y RHEL6.5, no estoy seguro acerca de Debian desde mod_auth_kerb aguas arriba está un poco muerto.
    • Por lo tanto, su REMOTE_USER variable contendrá principal de Kerberos o nombre de usuario local, dependiendo de cómo mod_auth_kerb fue configurado. Si su aplicación se basa en el hecho de que REMOTE_USER valor debe ser un verdadero sistema existente de usuario, usted necesita para asegurarse de que Krb5AuthToLocal opción está habilitada y dichos usuarios son visibles en el sistema (a través de winbind o sssd).

    Para tu caso te recomiendo buscar en excelente cómo por Tom McLaughlin: http://blogs.freebsdish.org/tmclaugh/2010/07/15/mod_auth_kerb-ad-and-ldap-authorization/

    Hay alguna documentación sobre el uso de Kerberos en PHP con ejemplos?

    OriginalEl autor abbra

Dejar respuesta

Please enter your comment!
Please enter your name here