Estoy tratando de implementar un organismo de normalización en Windows (en Java). Recientemente he descubierto este ejemplo haciendo exactamente lo que quiero hacer con Waffle:

//client credentials handle
IWindowsCredentialsHandle credentials= WindowsCredentialsHandleImpl.getCurrent("Negotiate");
credentials.initialize();

//initial client security context
WindowsSecurityContextImpl clientContext = new WindowsSecurityContextImpl();
clientContext.setPrincipalName(Advapi32Util.getUserName());
clientContext.setCredentialsHandle(credentials.getHandle());
clientContext.setSecurityPackage(securityPackage);
clientContext.initialize();

//accept on the server
WindowsAuthProviderImpl provider = new WindowsAuthProviderImpl();
IWindowsSecurityContext serverContext = null;

do {  

    if (serverContext != null) {

        //initialize on the client
        SecBufferDesc continueToken = new SecBufferDesc(Sspi.SECBUFFER_TOKEN, serverContext.getToken());
        clientContext.initialize(clientContext.getHandle(), continueToken);
    }  

    //accept the token on the server
    serverContext = provider.acceptSecurityToken(clientContext.getToken(), "Negotiate");

} while (clientContext.getContinue() || serverContext.getContinue());

System.out.println(serverContext.getIdentity().getFqn());
for (IWindowsAccount group : serverContext.getIdentity().getGroups()) {
    System.out.println(" " + group.getFqn());
}            

...

El ejemplo es sencillo, funciona y se las costuras de hacer exactamente lo que quiero. Pero no entiendo cómo funciona.

  • Lo que está sucediendo en el fondo?
  • Hace Waffle obtener el ticket de Kerberos desde Windows?
  • ¿Cómo funciona el servidor de validar el ticket del cliente?
  • Puedo absolutamente de confianza de los grupos de usuarios que recibo después de que el bucle
    desde el contexto del servidor?

Gracias. Thomas.

Si se establece este código, puedo agregar referencia a la jarra, soy capaz de compilar mi tarro, pero en tiempo de ejecución, tomcat lanza Advautil32 no puede ser resuelto, ¿dónde tengo que poner el waffle de los frascos ? gracias

OriginalEl autor Thomas Uhrig | 2013-07-29

1 Comentario

  1. 8

    Hace Waffle obtener el ticket de Kerberos desde Windows?

    Waffle utiliza el Windows SSPI, que realiza todas las operaciones de tickets de Kerberos en nombre del cliente. El cliente nunca ve el billete.

    ¿Cómo funciona el servidor de validar el ticket del cliente?

    Esta es una de Kerberos pregunta. El token se envía al servidor es encriptada al servidor de la clave secreta, la cual garantiza que el símbolo fue creado por el Servicio de Concesión de vales, que autentica al cliente.

    Puedo absolutamente de confianza de los grupos de usuarios que recibo después de que el bucle desde el contexto del servidor?

    Sí, el se recuperan desde el token de seguridad. Esta es una extensión específica del MIT protocolo Kerberos.

    OriginalEl autor Marko Topolnik

Dejar respuesta

Please enter your comment!
Please enter your name here