Skip to content

Commit 5eb0ee4

Browse files
authored
Use user.FullName in Oauth2 id_token response (go-gitea#32542)
This makes `/login/oauth/authorize` behave the same way as the `/login/oauth/userinfo` endpoint.
1 parent 896314c commit 5eb0ee4

File tree

3 files changed

+3
-22
lines changed

3 files changed

+3
-22
lines changed

routers/web/auth/oauth2_provider.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ func InfoOAuth(ctx *context.Context) {
9898

9999
response := &userInfoResponse{
100100
Sub: fmt.Sprint(ctx.Doer.ID),
101-
Name: ctx.Doer.FullName,
101+
Name: ctx.Doer.DisplayName(),
102102
PreferredUsername: ctx.Doer.Name,
103103
Email: ctx.Doer.Email,
104104
Picture: ctx.Doer.AvatarLink(ctx),

routers/web/auth/oauth_test.go

+1-20
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import (
1010
"code.gitea.io/gitea/models/db"
1111
"code.gitea.io/gitea/models/unittest"
1212
user_model "code.gitea.io/gitea/models/user"
13-
"code.gitea.io/gitea/modules/setting"
1413
"code.gitea.io/gitea/services/oauth2_provider"
1514

1615
"github.com/golang-jwt/jwt/v5"
@@ -66,25 +65,7 @@ func TestNewAccessTokenResponse_OIDCToken(t *testing.T) {
6665

6766
// Scopes: openid profile email
6867
oidcToken = createAndParseToken(t, grants[0])
69-
assert.Equal(t, user.Name, oidcToken.Name)
70-
assert.Equal(t, user.Name, oidcToken.PreferredUsername)
71-
assert.Equal(t, user.HTMLURL(), oidcToken.Profile)
72-
assert.Equal(t, user.AvatarLink(db.DefaultContext), oidcToken.Picture)
73-
assert.Equal(t, user.Website, oidcToken.Website)
74-
assert.Equal(t, user.UpdatedUnix, oidcToken.UpdatedAt)
75-
assert.Equal(t, user.Email, oidcToken.Email)
76-
assert.Equal(t, user.IsActive, oidcToken.EmailVerified)
77-
78-
// set DefaultShowFullName to true
79-
oldDefaultShowFullName := setting.UI.DefaultShowFullName
80-
setting.UI.DefaultShowFullName = true
81-
defer func() {
82-
setting.UI.DefaultShowFullName = oldDefaultShowFullName
83-
}()
84-
85-
// Scopes: openid profile email
86-
oidcToken = createAndParseToken(t, grants[0])
87-
assert.Equal(t, user.FullName, oidcToken.Name)
68+
assert.Equal(t, user.DisplayName(), oidcToken.Name)
8869
assert.Equal(t, user.Name, oidcToken.PreferredUsername)
8970
assert.Equal(t, user.HTMLURL(), oidcToken.Profile)
9071
assert.Equal(t, user.AvatarLink(db.DefaultContext), oidcToken.Picture)

services/oauth2_provider/access_token.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ func NewAccessTokenResponse(ctx context.Context, grant *auth.OAuth2Grant, server
148148
Nonce: grant.Nonce,
149149
}
150150
if grant.ScopeContains("profile") {
151-
idToken.Name = user.GetDisplayName()
151+
idToken.Name = user.DisplayName()
152152
idToken.PreferredUsername = user.Name
153153
idToken.Profile = user.HTMLURL()
154154
idToken.Picture = user.AvatarLink(ctx)

0 commit comments

Comments
 (0)