From 65aa11410399132df78a7dadafec9f3d3bfbee54 Mon Sep 17 00:00:00 2001 From: Gani Georgiev Date: Sun, 5 Mar 2023 19:19:03 +0200 Subject: [PATCH] added google OAuth2 verified_email check --- tools/auth/google.go | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/tools/auth/google.go b/tools/auth/google.go index 0a2a2a94..4a654d68 100644 --- a/tools/auth/google.go +++ b/tools/auth/google.go @@ -42,10 +42,11 @@ func (p *Google) FetchAuthUser(token *oauth2.Token) (*AuthUser, error) { } extracted := struct { - Id string - Name string - Email string - Picture string + Id string `json:"id"` + Name string `json:"name"` + Email string `json:"email"` + Picture string `json:"picture"` + VerifiedEmail bool `json:"verified_email"` }{} if err := json.Unmarshal(data, &extracted); err != nil { return nil, err @@ -54,12 +55,15 @@ func (p *Google) FetchAuthUser(token *oauth2.Token) (*AuthUser, error) { user := &AuthUser{ Id: extracted.Id, Name: extracted.Name, - Email: extracted.Email, AvatarUrl: extracted.Picture, RawUser: rawUser, AccessToken: token.AccessToken, RefreshToken: token.RefreshToken, } + if extracted.VerifiedEmail { + user.Email = extracted.Email + } + return user, nil }