STUN-server | Langetermijnreferenties

STUN-servers worden doorgaans geconfigureerd zonder verificatie, zodat elke STUN-client een bindingsverzoek kan verzenden en een reactie van de server kan verwachten zonder verificatie.

 

De sgcWebSockets STUN Server ondersteunt Long-Term Credentials, zodat u TsgcSTUNServer kunt configureren om alleen bindingsverzoeken met Long-Term credential-informatie toe te staan.

 

Om dit te configureren, opent u de eigenschap STUNOptions.Authorization en schakelt u deze in.

Ga vervolgens naar de eigenschap LongTermCredentials en schakel deze in. Standaard is dit type autorisatie al geconfigureerd met een Realm-tekenreeks en een standaard StaleNonce-waarde van 10 minuten (= 600 seconden).

 


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;