liveBook · Manning

Client authentication method

As explained in Spring Security in Action, Second Edition

A client authentication method is the protocol mechanism an OAuth client uses to authenticate when calling a provider's secured endpoints.

A client authentication method specifies how an OAuth client proves its identity when calling a provider’s secured endpoints, especially when requesting access tokens. Spring Security commonly configures this as HTTP Basic through `client_secret_basic`. section 16.1.3 section 14.1

Configure the method alongside the client’s other registration details:

  • Keep the method distinct from the authorization grant type, redirect URI, and scope; each controls a different part of the client registration. section 14.1

Authorization-code client using HTTP Basic

A client registered with ID `client`, secret `secret`, `CLIENT_SECRET_BASIC`, and the authorization-code grant can authenticate to the authorization server while using its registered redirect URI and scope.

How Spring Security in Action, Second Edition covers it

How deep it goes
Defines the method and shows matching client and authorization-server configuration, without comparing alternative authentication mechanisms.
Examples
Uses `client_secret_basic` in Spring properties and `CLIENT_SECRET_BASIC` in an in-memory RegisteredClient.
What it assumes
Assumes client ID, client secret, authorization grant type, redirect URI, and scope concepts.
What you can do after
Configure matching client and authorization-server registrations for HTTP Basic client authentication.
How it connects
Connects client credentials with authorization server, access token, authorization grant type, redirect URI, and scope.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Spring Security in Action, Second Edition. The section links point to the parts of the book it draws on.