diff --git a/connector/oidc/oidc.go b/connector/oidc/oidc.go
index 4c3dc6cea43b70ab1ab6c175b94cebaacdcddc4f..4ec86a05a91798c1bab61d84e89836410df5ec09 100644
--- a/connector/oidc/oidc.go
+++ b/connector/oidc/oidc.go
@@ -55,8 +55,8 @@ type Config struct {
 	// Configurable key which contains the user name claim
 	UserNameKey string `json:"userNameKey"`
 
-	// Configurable key which contains the username claims
-	PreferredUsernameKey string `json:"preferredUsernameKey"` // defaults to "username"
+	// Configurable key which contains the preferred username claims
+	PreferredUsernameKey string `json:"preferredUsernameKey"`
 
 	// PromptType will be used fot the prompt parameter (when offline_access, by default prompt=consent)
 	PromptType string `json:"promptType"`
@@ -302,9 +302,9 @@ func (c *oidcConnector) createIdentity(ctx context.Context, identity connector.I
 	hostedDomain, _ := claims["hd"].(string)
 
 	if c.preferredUsernameKey == "" {
-		c.preferredUsernameKey = "username"
+		c.preferredUsernameKey = "preferred_username"
 	}
-	username, _ := claims[c.preferredUsernameKey].(string)
+	preferredUsername, _ := claims[c.preferredUsernameKey].(string)
 
 	if len(c.hostedDomains) > 0 {
 		found := false
@@ -332,7 +332,7 @@ func (c *oidcConnector) createIdentity(ctx context.Context, identity connector.I
 	identity = connector.Identity{
 		UserID:            idToken.Subject,
 		Username:          name,
-		PreferredUsername: username,
+		PreferredUsername: preferredUsername,
 		Email:             email,
 		EmailVerified:     emailVerified,
 		ConnectorData:     connData,
diff --git a/connector/oidc/oidc_test.go b/connector/oidc/oidc_test.go
index b4d939e1d8ab8aaf311c49b83a49bc53f148c1ea..1515e0addc8a2d5261e989b3a17338a37fd5c471 100644
--- a/connector/oidc/oidc_test.go
+++ b/connector/oidc/oidc_test.go
@@ -85,16 +85,18 @@ func TestHandleCallback(t *testing.T) {
 			},
 		},
 		{
-			name:               "withUserIDKey",
-			userIDKey:          "name",
-			expectUserID:       "namevalue",
-			expectUserName:     "namevalue",
-			expectedEmailField: "emailvalue",
+			name:                    "withUserIDKey",
+			userIDKey:               "name",
+			expectUserID:            "namevalue",
+			expectUserName:          "namevalue",
+			expectPreferredUsername: "usernamevalue",
+			expectedEmailField:      "emailvalue",
 			token: map[string]interface{}{
-				"sub":            "subvalue",
-				"name":           "namevalue",
-				"email":          "emailvalue",
-				"email_verified": true,
+				"sub":                "subvalue",
+				"name":               "namevalue",
+				"preferred_username": "usernamevalue",
+				"email":              "emailvalue",
+				"email_verified":     true,
 			},
 		},
 		{
@@ -112,17 +114,17 @@ func TestHandleCallback(t *testing.T) {
 		},
 		{
 			name:                    "withPreferredUsernameKey",
-			preferredUsernameKey:    "preferred_username",
+			preferredUsernameKey:    "username_key",
 			expectUserID:            "subvalue",
 			expectUserName:          "namevalue",
-			expectPreferredUsername: "usernamevalue",
+			expectPreferredUsername: "username_value",
 			expectedEmailField:      "emailvalue",
 			token: map[string]interface{}{
-				"sub":                "subvalue",
-				"name":               "namevalue",
-				"preferred_username": "usernamevalue",
-				"email":              "emailvalue",
-				"email_verified":     true,
+				"sub":            "subvalue",
+				"name":           "namevalue",
+				"username_key":   "username_value",
+				"email":          "emailvalue",
+				"email_verified": true,
 			},
 		},
 		{