Genellikle STUN Sunucuları Kimlik Doğrulama olmadan yapılandırılır, böylece herhangi bir STUN istemcisi bir binding isteği gönderebilir ve sunucudan Kimlik Doğrulama olmadan bir yanıt bekleyebilir.
sgcWebSockets STUN Server Long-Term Credentials'ı destekler, böylece TsgcSTUNServer'ı yalnızca Long-Term credentials bilgisine sahip binding isteklerine izin verecek şekilde yapılandırabilirsiniz.
Yapılandırmak için STUNOptions.Authorization özelliğine erişin ve etkinleştirin.
Ardından LongTermCredentials özelliğine erişin ve onu etkinleştirin. Varsayılan olarak, bu tür yetkilendirme zaten bir Realm dizesi ve 10 dakikalık varsayılan bir StaleNonce değeri (= 600 saniye) ile yapılandırılmıştır.
oSTUN := TsgcSTUNServer.Create(nil);
oSTUN.Port := 3478;
oSTUN.STUNOptions.Authentication.Enabled := True;
oSTUN.STUNOptions.Authentication.LongTermCredentials.Enabled := True;
oSTUN.STUNOptions.Authentication.LongTermCredentials.Realm := 'sgcWebSockets';
oSTUN.STUNOptions.Authentication.LongTermCredentials.StaleNonce := 600;
oSTUN.Active := True;
procedure OnSTUNRequestAuthorization(Sender: TObject; const aRequest: TsgcSTUN_Message;
const aUsername, aRealm: string; var Password: string);
begin
if aUsername = 'my-user' then
Password := 'my-password';
end;