apache / apache/servicecomb-java-chassis

[BUG] - 服务间认证,消费方多实例时,服务方认证鉴权会失败

Ouverte
#5,139 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub
bug
Langage dominant
Java
Étoiles
1.9k
Forks
814
Merge moyen
8 j 23 h
PR mergées (30 j)
1

Description

### Steps to Reproduce

1、ConsumerTokenManager 生成的逻辑中,token拼接使用的 applicationName 和 serviceName,但是用于签名的公私钥对是每个微服务实例生成的。

2、ProviderTokenManager 去取消费方微服务的公钥时,默认取的实例组中的 get(0) 对应的公钥,就会导致多消费实例时,其他消费方认证失败

### Expected Behavior

_No response_

### Servicecomb Version

3.3.0

### Additional Context

_No response_

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Commencez par lire la logique de génération des tokens dans ConsumerTokenManager et la recherche de la clé publique du consommateur dans ProviderTokenManager. Reproduisez l’échec avec plusieurs instances de consommateurs sur ServiceComb 3.3.0 et suivez la manière dont applicationName, serviceName et les paires de clés propres à chaque instance sont utilisés. Le travail est terminé lorsque chaque instance de consommateur peut s’authentifier et obtenir l’autorisation du fournisseur avec succès.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
java
Domaine
authentication, authorization, backend
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
Calme
Clarté
Plutôt claire
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.