Kuldeep Singh
Kuldeep Singh

Reputation: 31

Waffle Authentication using Tomcat on Linux

UseCase: I will be looking at possible ways to achieve SSO with a Java (Spring based) web app where users belong to a Windows domain and where the users (and their credentials) gets stored in a Windows Active Directory (against which authentication gets performed).

Technologies used: Spring Security 3 integrated with Waffle API

Error Description:

I am facing issues while authenticating the users when my web application (Spring Security 3 integrated with Waffle API) get deployed on Tomcat under Linux Environment.

But my Authentication works fine when i deploy my application under the Windows Environment (Tomcat Server on Windows).

I am getting the following error message on Linux Environment:

java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.platform.win32.Advapi32 at waffle.windows.auth.impl.WindowsAuthProviderImpl. logonDomainUserEx(windowsAuthProviderImpl.java:170

Is there any workaround for Waffle API to authenticate the users based on windows AD by having that application deployed on Linux Environments (tomcat server on Linux environment)? Or is there any other way to achieve my above use case having my application deployed on Tomcat Server under Linux Box?

Upvotes: 3

Views: 3196

Answers (2)

Sulabh Upadhyay
Sulabh Upadhyay

Reputation: 102

As per Waffle's documentation:

While Waffle makes it ridiculously easy to do Windows Authentication in Java, on Windows, Waffle does not work on *nix.

Upvotes: 2

torbenmerrald
torbenmerrald

Reputation: 45

Waffle can not be used from a Linux box, as it communicates with the native Windows API.

You would need to use Spring Kerberos.

Upvotes: 2

Related Questions