我打算通过coturn - https://code.google.com/p/coturn/为WebRTC应用运行我自己的TURN服务。手册说,这个有关身份验证和证书:对于WebRTC与TURN服务器一起工作,是否需要*'长期凭证'认证机制?
...
-a, --lt-cred-mech
Use long-term credentials mechanism (this one you need for WebRTC usage). This option can be used with
either flat file user database or PostgreSQL DB or MySQL DB or MongoDB or Redis for user keys storage.
...
此客户端的代码示例还表明,凭据需要TURN:
// use google's ice servers
var iceServers = [
{ url: 'stun:stun.l.google.com:19302' }
// { url: 'turn:192.158.29.39:3478?transport=udp',
// credential: 'JZEOEt2V3Qb0y27GRntt2u2PAYA=',
// username: '28224511:1379330808'
// },
// { url: 'turn:192.158.29.39:3478?transport=tcp',
// credential: 'JZEOEt2V3Qb0y27GRntt2u2PAYA=',
// username: '28224511:1379330808'
// }
];
- 难道他们总是需要? (Coturn可以在没有任何认证机制的情况下运行,但是从手册页不清楚是否严格为要求 for WebRTC工作)
- 如果需要,我可以创建一组凭据并将其用于所有客户呢? (客户端代码示例显然只是为了演示,但似乎表明您可能会将凭据硬编码到客户端代码中。如果这不可行/不值得推荐,那么将推荐的方法将适当的凭据传递给客户方代码?)
Tks for info bud – 2014-10-14 09:58:37
如果您想提供TURN和STUN服务,您可能需要使用'cert'和'pkey'属性将配置文件添加到域信任证书和私钥中。 – logoff 2015-02-18 14:14:00