Validate RefreshedToken differs from original invite token (#34864) (#35656)

Automatic Merge
Этот коммит содержится в:
Mattermost Build
2026-03-17 12:31:12 +01:00
коммит произвёл GitHub
родитель 305be32134
Коммит 8c4ed0b65b
2 изменённых файлов: 44 добавлений и 0 удалений

Просмотреть файл

@@ -71,6 +71,9 @@ func (rcs *Service) ReceiveInviteConfirmation(confirm model.RemoteClusterInvite)
// If the accepting cluster sent a RefreshedToken (its RemoteToken), set it as our Token
if confirm.Version >= 2 && confirm.RefreshedToken != "" {
if confirm.RefreshedToken == rc.Token {
return nil, fmt.Errorf("cannot accept invite confirmation for remote %s: RefreshedToken must be different from the original invite token", confirm.RemoteId)
}
rc.Token = confirm.RefreshedToken
} else {
// For older versions or if no RefreshedToken was provided, generate a new token