Retrieve OAuth2 or Personal Accesss Tokens for Visual Studio Team Services (visualstudio.com) accounts. Also provides secure storage for those secrets on different platforms.
Java Groovy
Clone or download
maartenba and DavidStaheli OAuth2Authenticator.getOAuth2TokenPair() is unable to use refresh tok…
…en (#16)

* OAuth2Authenticator.getOAuth2TokenPair() is unable to use refresh token

See #15

* Update .travis.yml
Latest commit 5e8335b Jun 18, 2018

README.md

Visual Studio Team Services Authentication Library for Java (Preview) Build Status

Retrieve OAuth2 Access Token or Personal Accesss Tokens for Visual Studio Team Services (visualstudio.com) accounts. Also provides secure storage for those secrets on different platforms.

To learn more about Visual Studio Team Services and our Java specific tools, please visit https://java.visualstudio.com.

What this library provides

This library provides:

  1. a set of authenticators in the core module that can be used to retrieve credentials in the form of OAuth2 Access Token or Personal Access Token against any Visual Studio Team Services account.
  2. a set of secure storage providers that store retrieved secrets, as well as In memory and File system backed insecure storages.
  3. a set of providers that hide the interaction between storage and authenticator, and returns authenticated client that can be used directly against Visual Studio Team Services REST APIs.

Available Secure Storage Providers:

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

How to use this library

Maven is the preferred way to referencing this library.

  <dependency>
    <groupId>com.microsoft.alm</groupId>
    <artifactId>auth-providers</artifactId>
    <version>0.6.3</version>
  </dependency>

If only interested in specific modules:

  <dependency>
    <groupId>com.microsoft.alm</groupId>
    <artifactId>auth-secure-storage</artifactId>
    <version>0.6.3</version>
  </dependency>
  <dependency>
    <groupId>com.microsoft.alm</groupId>
    <artifactId>auth-core</artifactId>
    <version>0.6.3</version>
  </dependency>

Here is a Sample App that uses this library.

How to build

  1. Oracle JDK 6
  2. Maven 3.2+
  3. mvn clean verify

How can I contribute?

This is a preview release, please open issues and give us feedback! We also welcome Pull Requests.

License

The MIT license can be found in LICENSE.txt

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.