FetchRawUserInfo implements Provider.FetchRawUserInfo interface method. It either fetch the data from p.userInfoURL, or if not set - returns the id_token claims.
(token *oauth2.Token)
| 118 | // |
| 119 | // It either fetch the data from p.userInfoURL, or if not set - returns the id_token claims. |
| 120 | func (p *OIDC) FetchRawUserInfo(token *oauth2.Token) ([]byte, error) { |
| 121 | if p.userInfoURL != "" { |
| 122 | return p.BaseProvider.FetchRawUserInfo(token) |
| 123 | } |
| 124 | |
| 125 | claims, err := p.parseIdToken(token) |
| 126 | if err != nil { |
| 127 | return nil, err |
| 128 | } |
| 129 | |
| 130 | return json.Marshal(claims) |
| 131 | } |
| 132 | |
| 133 | func (p *OIDC) parseIdToken(token *oauth2.Token) (jwt.MapClaims, error) { |
| 134 | idToken := token.Extra("id_token").(string) |
no test coverage detected