Skip to content

Latest commit

 

History

History
19 lines (9 loc) · 1.33 KB

ClientSide.md

File metadata and controls

19 lines (9 loc) · 1.33 KB

Can WAFFLE be used on the client side?

Yes.

You can use WAFFLE to implement HTTP client-side to perform authentication against NTLMv2/SPNEGO secured services.

You don't actually need Waffle for client-side, just JNA. Your code needs to invoke the Windows SSPI to obtain a value for the WWW-Authenticate header to be injected into the HTTP request, read the Authorization header from the HTTP response and possibly repeat that process several times.

In Java, a good place to start is NegotiateSecurityFilterTests.testNegotiate, that implements both the client and the server side.

In C#, a good place to start is the WindowsAuthProviderUnitTests.testNegotiate.

There's a full example of both client and server in github.com/dblock/ssoexample-waffle.

Read this blog post if you want to understand what all these APIs do.