TsgcSTUNServerEventos › OnSTUNRequestAuthorization

OnSTUNRequestAuthorization Evento

Gerado quando uma Binding Request requer autenticação; forneça a senha associada ao Username/Realm recebido.

Sintaxe

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

Valor Padrão

Observações

Disparado uma vez por Binding Request autenticado, depois que o atributo MESSAGE-INTEGRITY de entrada foi analisado, mas antes de ser verificado. aUsername e aRealm são decodificados da requisição (o realm é vazio para credenciais de curto prazo). Atribua a senha associada a esse usuário ao var-parameter Password; o servidor então calcula a chave HMAC e aceita a requisição ou responde com uma resposta 401 Unauthorized quando o valor de integridade calculado não corresponde. Deixe Password como uma string vazia para rejeitar o usuário, o que também resulta em uma resposta 401. Este handler é executado na thread do listener, a menos que NotifyEvents selecione outro modo — mantenha-o curto e thread-safe.

Exemplo

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;

Voltar para Eventos