TsgcSTUNServerGebeurtenissen › OnSTUNRequestAuthorization

OnSTUNRequestAuthorization Gebeurtenis

Wordt geactiveerd wanneer een Binding Request authenticatie vereist; lever het wachtwoord dat bij de binnenkomende Username/Realm hoort.

Syntaxis

property OnSTUNRequestAuthorization: TsgcSTUNRequestAuthorizationEvent;
// TsgcSTUNRequestAuthorizationEvent = procedure(Sender: TObject; const aRequest: TsgcSTUN_Message; const aUsername, aRealm: string; var Password: string) of object

Standaardwaarde

Opmerkingen

Eenmalig gegenereerd per geverifieerd Binding Request, nadat het inkomende MESSAGE-INTEGRITY-attribuut is geparsed maar vóórdat het wordt geverifieerd. aUsername en aRealm worden gedecodeerd uit het verzoek (het realm is leeg voor kortetermijnreferenties). Wijs het wachtwoord dat bij die gebruiker hoort toe aan de variabeleparameter Password; de server berekent vervolgens de HMAC-sleutel en accepteert het verzoek of antwoordt met een 401 Unauthorized-respons wanneer de berekende integriteitswaarde niet overeenkomt. Laat Password als lege tekenreeks om de gebruiker te weigeren, wat ook een 401-respons oplevert. Deze handler wordt uitgevoerd op de listener-thread tenzij NotifyEvents een andere modus selecteert — houd hem kort en thread-veilig.

Voorbeeld

procedure TForm1.OnSTUNRequestAuthorization(Sender: TObject;
  const aRequest: TsgcSTUN_Message; const aUsername, aRealm: string;
  var Password: string);
begin
  if SameText(aUsername, 'alice') then
    Password := 'secret'
  else
    Password := '';
end;

Terug naar Events