Package com.ocient.auth

# Class OpenIDAuthenticators.DeviceAuthorizationGrantClient

java.lang.Object
com.ocient.auth.OpenIDAuthenticators.DeviceAuthorizationGrantClient

Enclosing class:
  OpenIDAuthenticators

public static class OpenIDAuthenticators.DeviceAuthorizationGrantClient extends Object
From https://datatracker.ietf.org/doc/html/rfc8628

The OAuth 2.0 device authorization grant is designed for Internet-connected devices that either lack a browser to perform a user-agent-based authorization or are input constrained to the extent that requiring the user to input text in order to authenticate during the authorization flow is impractical. It enables OAuth clients on such devices (like smart TVs, media consoles, digital picture frames, and printers) to obtain user authorization to access protected resources by using a user agent on a separate device.

## Method Summary

Modifier and Type
Method
Description
`static OpenIDAuthenticators.DeviceAuthorizationGrant<OpenIDAuthenticators.OAuthToken>`
`create(ClientWireProtocol.OpenIDAuthenticator authenticator)`
Calls the /device endpoint found in the discovery document to obtain the unique device verification code and the verification URI.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Method Details

### create

public static OpenIDAuthenticators.DeviceAuthorizationGrant<OpenIDAuthenticators.OAuthToken> create(ClientWireProtocol.OpenIDAuthenticator authenticator) throws IOException, KeyManagementException, NoSuchAlgorithmException, KeyStoreException
Calls the /device endpoint found in the discovery document to obtain the unique device verification code and the verification URI.

Parameters:
  `authenticator` - the Authorization Server
Returns:
  `OpenIDAuthenticators.DeviceAuthorizationGrant`
Throws:
  `IOException`
  `KeyStoreException`
  `NoSuchAlgorithmException`
  `KeyManagementException`