Step 1. Add the JitPack repository to your build file
Add it in your root settings.gradle at the end of repositories:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url 'https://jitpack.io' }
}
}
Add it in your settings.gradle.kts at the end of repositories:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url = uri("https://jitpack.io") }
}
}
Add to pom.xml
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
Add it in your build.sbt at the end of resolvers:
resolvers += "jitpack" at "https://jitpack.io"
Add it in your project.clj at the end of repositories:
:repositories [["jitpack" "https://jitpack.io"]]
Step 2. Add the dependency
dependencies {
implementation 'com.github.Waffle:waffle:-SNAPSHOT'
}
dependencies {
implementation("com.github.Waffle:waffle:-SNAPSHOT")
}
<dependency>
<groupId>com.github.Waffle</groupId>
<artifactId>waffle</artifactId>
<version>-SNAPSHOT</version>
</dependency>
libraryDependencies += "com.github.Waffle" % "waffle" % "-SNAPSHOT"
:dependencies [[com.github.Waffle/waffle "-SNAPSHOT"]]
WAFFLE is a native Windows Authentication Framework consisting of two C# and Java libraries that perform functions related to Windows authentication, supporting Negotiate, NTLM and Kerberos. Waffle also includes libraries that enable drop-in Windows Single Sign On for popular Java web servers, when running on Windows. While Waffle makes it ridiculously easy to do Windows Authentication in Java, on Windows, Waffle does not work on *nix(UNIX-like).
Unlike many other implementations Waffle on Windows does not require any server-side Kerberos keytab setup, it's a drop-in solution. You can see it in action in this slightly blurry video produced for TeamShatter.com.
There're several semi-independent parts to Waffle. Choose the appropriate HowTo.
Waffle was created and is sponsored by Application Security Inc.. For a long story, read the Project History. Also, feel free to use this PowerPoint presentation from NYJavaSIG to talk about Waffle.
NoClassDefFound
errors?WAFFLE uses the latest version of JNA, which may conflict with other dependencies your project (or its parent) includes. If you experience issues with NoClassDefFound
errors for JNA artifacts, consider one or more of the following steps to resolve the conflict:
jna.version
propertyWAFFLE packages serveral demos. When building from the source, you can use mvn cargo:run
to bring any of the demos up. See further README documentation in each demo (and what doesn't quite work). Additionally demos are documented in various states in documentation. This area does need some user help so feel free to contribute.
Copyright (c) Application Security Inc., 2010-2020 and Contributors.
This project is licensed under the MIT License.
Project maintained by Daniel Doubrovkine & Jeremy Landis.