agora.ioのSecurity Keyについて
- Agora.io
はじめに
この資料は公式ドキュメントを解説したものです。
用語説明
Token:メディア系SDK用のSecurity Key (new)
Channel Key:メディア系SDK用のSecurity Key (old)
Signaling Token:SignalingSDK用のSecurity Key

概要
Agora SDKではチャネル接続時にセキュリティ要件に応じて2種類の接続方法があります。
1.低いセキュリティでの接続(テスト用アプリ等)
2.高いセキュリティでの接続(製品用アプリ等)

(低いセキュリティの場合,App ID漏洩した場合、不正に利用される可能性があります。)
TokenとChannel Keyの違い
チャネル内の権限設定可否や利用できる機能の制限可否が異なります。
Token:権限/機能制限の設定可
Channel Key:権限/機能制限の設定不可
サンプルコード
各種Keyの生成についてはGitHubにサンプルコードが公開されています

メディア系SDKのKeyライフサイクル

SignalingSDKのKeyライフサイクル

補足1
WebSDKでKeyの有効期限が切れた場合は以下のコールバックで取得できます
client.on('error', function(err) {
console.log("Got error msg:", err.reason);
if (err.reason === 'ERR_DYNAMIC_KEY_EXPIRED') {
client.renewChannelKey(channelKey, function(){
console.log("Renew channel key successfully");
}, function(err){
console.log("Renew channel key failed: ", err);
});
}
});
補足2
セキュリティキーは有効期限内であれば再利用可能です。