Machine-to-Machine Authentication/Authorization
Machines clients configured with a client credentials grant are given a secret and secret key (pair) that’s used to prove their identity. The machine client submits these credentials when requesting access to a resource such as another application or backend service. After the client machine’s successful authentication by an Identity Provider service, the client machine is granted an access token to the resource. The general M2M flow is as follows:- The machine client sends a request with their client ID, client secret, and grant/scope to an Identity Provider (IdP) service or authentication server.
- Once the client machine’s credentials (identity) are successfully authenticated, the IdP service generates an access token and sends it to the client machine. The assigned role and permission(s) are encoded into the access token and define the client machine’s access level and permitted actions on the resource requested.
- The client machine submits their access token in it’s next request to gain access to a specific resource or service.

