Secure storage for credentials in platform-provided credential managers.
Find a file
2026-02-13 06:21:20 +01:00
.github Use JDK 21 for GitHub Actions 2026-02-12 05:58:14 +01:00
config/checkstyle First commit 2022-05-09 22:18:16 +01:00
sample Rebrand com.microsoft -> org.aglais 2026-02-13 06:21:20 +01:00
src Make secure storage entries show up in Linux GUI tools 2026-02-13 06:21:20 +01:00
.gitattributes First commit 2022-05-09 22:18:16 +01:00
.gitignore First commit 2022-05-09 22:18:16 +01:00
CODE_OF_CONDUCT.md First commit 2022-05-09 22:18:16 +01:00
CONTRIBUTING.md First commit 2022-05-09 22:18:16 +01:00
LICENSE.txt First commit 2022-05-09 22:18:16 +01:00
NOTICE.txt First commit 2022-05-09 22:18:16 +01:00
pom.xml Rebrand com.microsoft -> org.aglais 2026-02-13 06:21:20 +01:00
README.md Rebrand com.microsoft -> org.aglais 2026-02-13 06:21:20 +01:00
SECURITY.md First commit 2022-05-09 22:18:16 +01:00

Credential Secure Storage for Java

Unified interface to store Java application secrets on different platforms backed by built-in credential managers.

The library is derivative work from Visual Studio Team Services Authentication Library for Java (Preview), auth-secure-storage module in particular, focusing on secure storage only.

What this library provides

This library provides a set of secure storage providers that store retrieved secrets, as well as In memory insecure storage.

Available Secure Storage Providers:

Secret Type Windows
(Credential Manager)
Linux
(GNOME Keyring v2.22+/Libsecret)
Mac OSX
(Keychain)
Username / Password Credentials (StoredCredential) Yes Yes Yes
OAuth2 Access/Refresh Token (StoredTokenPair) Yes (On Windows 7, 8/8.1 and 10) Yes Yes
Personal Access Token (StoredToken) Yes Yes Yes

How to use this library

Maven is the preferred way to referencing this library.

  <dependency>
    <groupId>org.aglais</groupId>
    <artifactId>credential-secure-storage</artifactId>
    <version>1.0.4</version>
  </dependency>

Here is sample code for credentials that shows how to use this library.

How to build

  1. JDK 11
  2. Maven 3.8+
  3. mvn clean verify

License

The MIT license can be found in LICENSE.txt See the NOTICE.txt file for required notices and attributions.

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsofts Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-partys policies.