TsgcSTUNServerEventos › OnSTUNRequestAuthorization

OnSTUNRequestAuthorization Evento

Se genera cuando una solicitud Binding requiere autenticación; proporcione la contraseña asociada al Username/Realm entrante.

Sintaxis

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

Valor Predeterminado

Observaciones

Se activa una vez por cada solicitud de enlace autenticada, después de que el atributo MESSAGE-INTEGRITY entrante ha sido analizado pero antes de ser verificado. aUsername y aRealm se decodifican de la solicitud (el realm está vacío para las credenciales de corto plazo). Asigne la contraseña asociada a ese usuario al parámetro var Password; el servidor calcula entonces la clave HMAC y acepta la solicitud o responde con una respuesta 401 Unauthorized cuando el valor de integridad calculado no coincide. Deje Password como cadena vacía para rechazar al usuario, lo que también genera una respuesta 401. Este controlador se ejecuta en el subproceso de escucha a menos que NotifyEvents seleccione otro modo — manténgalo breve y seguro para subprocesos.

Ejemplo

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;

Volver a Eventos