TsgcWebSocketServer › Eventi › OnNegotiateAuthentication
Si attiva quando uno scambio Kerberos o NTLM (Negotiate) viene completato, in modo che l'applicazione possa accettare o rifiutare il principal autenticato.
property OnNegotiateAuthentication: TsgcWSNegotiateAuthenticationEvent;
// TsgcWSNegotiateAuthenticationEvent = procedure(Connection: TsgcWSConnection; const aPrincipal: String; var Authenticated: Boolean) of object
—
Richiede l'edizione Enterprise di sgcWebSockets. OnNegotiateAuthentication viene generato quando lo scambio Kerberos o NTLM avviato da Authentication.Negotiate.Enabled viene completato. aPrincipal è l'identità autenticata: DOMAIN\user su Windows e user@REALM su Linux. Authenticated arriva impostato a True, quindi senza un gestore viene accettato ogni principal autenticato da Windows o Kerberos. Lo imposti a False per rifiutare il principal; il client riceve quindi una risposta 401. Sui server Indy il principal può essere letto successivamente come TsgcWSConnectionServer(Connection).Authentication.User (AuthType è authNegotiate). Vedere Autenticazione Kerberos e Negotiate.
procedure TForm1.OnNegotiateAuthenticationEvent(Connection: TsgcWSConnection;
const aPrincipal: String; var Authenticated: Boolean);
begin
Authenticated := SameText(aPrincipal, 'EXAMPLE\alice') or
SameText(aPrincipal, 'EXAMPLE\bob');
end;