dwyl / dwyl/elixir-auth-microsoft

Add a way to refresh token

Open
#55 0 comments 3 reactions 1 assignee Claimed by @LuchoTurtle View on GitHub
documentation elixir enhancement
Dominant language
Elixir
Stars
48
Forks
9
PR merge metrics
No merged PRs in 30d

Description

As per #54 , this package should have a way for people to refresh their tokens and a way of knowing if they are invalid or expired.

Typically, when a token is expired, the web application should try to refresh it and get the new one seamlessly in case a request to a protected resource fails. Having a function that refreshes the token given an access token should make it easy for people to do so.
The package calls the `/authorize` end point and receives **an access token**.

```json
{
"token_type":"Bearer",
"scope":"https://graph.microsoft.com/User.Read",
"expires_in":3600,
"ext_expires_in":3600,
"access_token":"xxxxxxx"
}
```

According to https://learn.microsoft.com/en-us/entra/identity-platform/v2-oauth2-auth-code-flow, we should be able to also return the refresh token.

> An OAuth 2.0 refresh token. The app can use this token to acquire other access tokens after the current access token expires. Refresh tokens are long-lived. They can maintain access to resources for extended periods. For more detail on refreshing an access token, refer to [Refresh the access token](https://learn.microsoft.com/en-us/entra/identity-platform/v2-oauth2-auth-code-flow#refresh-the-access-token) later in this article.
**Note: Only provided if offline_access scope was requested.**

The client user should have access to the refresh token, as well.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.