Class OidcLoginProvider
java.lang.Object
ecmwf.ecpds.extension.oidc.OidcLoginProvider
- All Implemented Interfaces:
Extension, InteractiveLoginProvider, AutoCloseable
OIDC authorization-code login with S256 PKCE and RS256 ID tokens from a pinned issuer/JWKS endpoint.
-
Nested Class Summary
Nested classes/interfaces inherited from interface InteractiveLoginProvider
InteractiveLoginProvider.ExternalIdentity -
Field Summary
Fields inherited from interface Extension
API_VERSION -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintauthenticate(String code, String nonce, String codeVerifier) authorizationUri(String state, String nonce, String codeChallenge) voidclose()protected StringFixed HTTPS destinations, no redirects, bounded response size and socket waits.voidstart(ExtensionContext context)
-
Constructor Details
-
OidcLoginProvider
public OidcLoginProvider()
-
-
Method Details
-
apiVersion
public int apiVersion()- Specified by:
apiVersionin interfaceExtension
-
start
- Specified by:
startin interfaceExtension- Throws:
IOException
-
displayName
- Specified by:
displayNamein interfaceInteractiveLoginProvider
-
authorizationUri
- Specified by:
authorizationUriin interfaceInteractiveLoginProvider
-
authenticate
public InteractiveLoginProvider.ExternalIdentity authenticate(String code, String nonce, String codeVerifier) throws IOException - Specified by:
authenticatein interfaceInteractiveLoginProvider- Throws:
IOException
-
request
Fixed HTTPS destinations, no redirects, bounded response size and socket waits.- Throws:
IOException
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceExtension- Throws:
IOException
-