La RFC 5389 autorise l'une des deux formes d'authentification pour les serveurs STUN :

 ... This section defines two mechanisms for STUN that a client and server
 can use to provide authentication and message integrity; these two
 mechanisms are known as the short-term credential mechanism and the
 long-term credential mechanism.  These two mechanisms are optional,
 and each usage must specify if and when these mechanisms are used.
 Consequently, both clients and servers will know which mechanism (if
 any) to follow based on knowledge of which usage applies.  For
 example, a STUN server on the public Internet supporting ICE would
 have no authentication, whereas the STUN server functionality in an
 agent supporting connectivity checks would utilize short-term credentials. 

Le serveur STUN le plus populaire est probablement celui disponible sur stun:stun.l.google.com:19302 et ne nécessite clairement aucune information d'identification.

Les iceServers sont fournis à RTCPeerConnection via des objets tels que :

   myPeerConnection = new RTCPeerConnection({
      iceServers: [
         {
              urls: "turn:turnserver.example.org",
              username: "webrtc",
              credential: "turnpassword"
         }
       ]
   });

Ma question est lors de l'envoi de la demande au serveur STUN, comment le traitement ICE construit-il la demande STUN ? Utilise-t-il des informations d'identification à court ou à long terme ? La propriété credentialType que je pense avoir vue est-elle interprétée comme à court terme ou à long terme ? Et comment le serveur STUN sait-il quel processus (à court ou à long terme) a été suivi pour créer la demande de message. À moins qu'il ne le sache, il ne peut pas authentifier la demande, à moins que le processus ne soit le même. Dans ce cas, pourquoi faire la distinction entre les deux.

0
asinix 10 févr. 2020 à 23:12

1 réponse

Meilleure réponse

Les allocations TURN sont toujours effectuées à l'aide du mécanisme d'identification à long terme, voir https://tools. ietf.org/html/rfc5766#section-2.2

Les requêtes STUN aux serveurs STUN ne nécessitent généralement pas d'authentification.

Le mécanisme d'identification à court terme est utilisé pour d'autres choses comme ICE, voir https://tools .ietf.org/html/rfc5245#section-4.3

3
Philipp Hancke 10 févr. 2020 à 20:19