Skip to content

Commit b1dcb39

Browse files
mathiazombendikrb
authored andcommitted
fix(auth): add offline_access scope
to include refresh_token in auth response
1 parent a5b2f8e commit b1dcb39

File tree

4 files changed

+2
-11
lines changed

4 files changed

+2
-11
lines changed

podme_api/auth/client.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,7 @@ async def authorize(self, user_credentials: PodMeUserCredentials) -> SchibstedCr
212212
"client_id": CLIENT_ID,
213213
"redirect_uri": "https://podme.com/auth/handleSchibstedLogin",
214214
"response_type": "code",
215-
"scope": "openid email",
215+
"scope": "openid email offline_access",
216216
"state": json.dumps(
217217
{
218218
"returnUrl": PODME_AUTH_RETURN_URL,

podme_api/auth/models.py

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,19 +21,11 @@ class SchibstedCredentials(BaseDataClassORJSONMixin):
2121
"""Represents Schibsted authentication credentials."""
2222

2323
scope: str
24-
user_id: str
25-
is_admin: bool
2624
token_type: str
2725
access_token: str
2826
refresh_token: str
2927
expires_in: int
3028
id_token: str
31-
server_time: datetime = field(
32-
metadata=field_options(
33-
deserialize=datetime.fromtimestamp,
34-
serialize=lambda v: int(datetime.timestamp(v)),
35-
)
36-
)
3729
expiration_time: datetime = field(
3830
metadata=field_options(
3931
deserialize=datetime.fromtimestamp,
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"scope":"openid email","user_id":"123456","is_admin":false,"token_type":"Bearer","access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL3BheW1lbnQuc2NoaWJzdGVkLm5vLyIsImlhdCI6MTcyODUxODQwMCwiZXhwIjo0MTAyNDQ0ODAwLCJhdWQiOiJodHRwczovL3BvZG1lLmNvbSIsInN1YiI6IjAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwZmZmZiIsInVzZXJfaWQiOiIxMjM0NTYiLCJjbGFzcyI6InRva2VuLk9BdXRoVXNlckFjY2Vzc1Rva2VuIiwianRpIjoiMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMGZmIiwic2NvcGUiOiJvcGVuaWQgZW1haWwiLCJhenAiOiI2NmZkMjZjZGFlNmJkZTU3ZWYyMDZiMzUiLCJjbGllbnRfaWQiOiI2NmZkMjZjZGFlNmJkZTU3ZWYyMDZiMzUifQ.eXMqS6ymgIthKCDKgGK3ZzFZaY0P-B-2z5QjuZlsIzc","refresh_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL3BheW1lbnQuc2NoaWJzdGVkLm5vLyIsImlhdCI6MTcyODUxODQwMCwiZXhwIjo0MTAyNDQ0ODAwLCJhdWQiOiJodHRwczovL3BvZG1lLmNvbSIsInN1YiI6IjAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwZmZmZiIsInVzZXJfaWQiOiIxMjM0NTYiLCJjbGFzcyI6InRva2VuLk9BdXRoVXNlclJlZnJlc2hUb2tlbiIsImp0aSI6IjAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDBmZiIsInNjb3BlIjoib3BlbmlkIGVtYWlsIiwiYXpwIjoiNjZmZDI2Y2RhZTZiZGU1N2VmMjA2YjM1IiwiY2xpZW50X2lkIjoiNjZmZDI2Y2RhZTZiZGU1N2VmMjA2YjM1IiwiYWp0aSI6IjAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDBkZCJ9.M_oRHsskpt0ODJIZJ4x9VlMWIFpTsXkbLucyH1Oj3_Q","expires_in":600,"id_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL3BheW1lbnQuc2NoaWJzdGVkLm5vLyIsImlhdCI6MTcyODUxODQwMCwiZXhwIjo0MTAyNDQ0ODAwLCJhdWQiOlsiNjZmZDI2Y2RhZTZiZGU1N2VmMjA2YjM1IiwiaHR0cHM6Ly9wb2RtZS5jb20iXSwic3ViIjoiMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDBmZmZmIiwibGVnYWN5X3VzZXJfaWQiOiIxMjM0NTYiLCJjbGFzcyI6InRva2VuLklEVG9rZW4iLCJhenAiOiI2NmZkMjZjZGFlNmJkZTU3ZWYyMDZiMzUiLCJlbWFpbCI6InRlc3R1c2VyQGV4YW1wbGUuY29tIn0.N-7DexoBVhvLdPLP75cxZrXm0ToiFVCmouV2Ixynp6k","server_time":1704067200,"expiration_time":1704067800,"account_created":null,"email":null}
1+
{"scope":"openid email offline_access","token_type":"Bearer","access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL3BheW1lbnQuc2NoaWJzdGVkLm5vLyIsImlhdCI6MTcyODUxODQwMCwiZXhwIjo0MTAyNDQ0ODAwLCJhdWQiOiJodHRwczovL3BvZG1lLmNvbSIsInN1YiI6IjAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwZmZmZiIsInVzZXJfaWQiOiIxMjM0NTYiLCJjbGFzcyI6InRva2VuLk9BdXRoVXNlckFjY2Vzc1Rva2VuIiwianRpIjoiMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMGZmIiwic2NvcGUiOiJvcGVuaWQgZW1haWwiLCJhenAiOiI2NmZkMjZjZGFlNmJkZTU3ZWYyMDZiMzUiLCJjbGllbnRfaWQiOiI2NmZkMjZjZGFlNmJkZTU3ZWYyMDZiMzUifQ.eXMqS6ymgIthKCDKgGK3ZzFZaY0P-B-2z5QjuZlsIzc","refresh_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL3BheW1lbnQuc2NoaWJzdGVkLm5vLyIsImlhdCI6MTcyODUxODQwMCwiZXhwIjo0MTAyNDQ0ODAwLCJhdWQiOiJodHRwczovL3BvZG1lLmNvbSIsInN1YiI6IjAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwZmZmZiIsInVzZXJfaWQiOiIxMjM0NTYiLCJjbGFzcyI6InRva2VuLk9BdXRoVXNlclJlZnJlc2hUb2tlbiIsImp0aSI6IjAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDBmZiIsInNjb3BlIjoib3BlbmlkIGVtYWlsIiwiYXpwIjoiNjZmZDI2Y2RhZTZiZGU1N2VmMjA2YjM1IiwiY2xpZW50X2lkIjoiNjZmZDI2Y2RhZTZiZGU1N2VmMjA2YjM1IiwiYWp0aSI6IjAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDBkZCJ9.M_oRHsskpt0ODJIZJ4x9VlMWIFpTsXkbLucyH1Oj3_Q","expires_in":600,"id_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL3BheW1lbnQuc2NoaWJzdGVkLm5vLyIsImlhdCI6MTcyODUxODQwMCwiZXhwIjo0MTAyNDQ0ODAwLCJhdWQiOlsiNjZmZDI2Y2RhZTZiZGU1N2VmMjA2YjM1IiwiaHR0cHM6Ly9wb2RtZS5jb20iXSwic3ViIjoiMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDBmZmZmIiwibGVnYWN5X3VzZXJfaWQiOiIxMjM0NTYiLCJjbGFzcyI6InRva2VuLklEVG9rZW4iLCJhenAiOiI2NmZkMjZjZGFlNmJkZTU3ZWYyMDZiMzUiLCJlbWFpbCI6InRlc3R1c2VyQGV4YW1wbGUuY29tIn0.N-7DexoBVhvLdPLP75cxZrXm0ToiFVCmouV2Ixynp6k","server_time":1704067200,"expiration_time":1704067800,"account_created":null,"email":null}

tests/test_auth.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,6 @@ async def test_get_set_credentials(podme_default_auth_client, default_credential
101101

102102
# Set credentials using a dictionary
103103
new_creds_dict = default_credentials.to_dict()
104-
new_creds_dict["user_id"] = "123456"
105104
auth_client.set_credentials(new_creds_dict)
106105
retrieved_new_credentials = auth_client.get_credentials()
107106
assert retrieved_new_credentials == new_creds_dict

0 commit comments

Comments
 (0)