TsgcWebSocketHTTPServerEvents › OnUnknownAuthentication

OnUnknownAuthentication イベント

認証が有効になっており、認証メソッドがサーバーに認識されない場合に発生します。

構文

property OnUnknownAuthentication: TsgcWSUnknownAuthenticationEvent;
// TsgcWSUnknownAuthenticationEvent = procedure(Connection: TsgcWSConnection; AuthType, AuthData: String; var aUser, aPassword: String; var Authenticated: Boolean) of object

デフォルト値

解説

OnUnknownAuthentication は、クライアントが組み込みスキーム(Basic、Session、URL)のいずれにも一致しない Authorization ヘッダー(例えば JWT Bearer トークンやカスタムスキーム)を提示したときに発生します。AuthType パラメーターにはスキーム名が、AuthData にはクライアントが送信した生の資格情報が含まれます。アプリケーションはそれらを解析し、aUser と aPassword 出力パラメーターを設定(セッションにユーザー名をタグ付け)して、接続を受け入れるには Authenticated を True に、拒否するには False に設定できます。Authentication.Enabled が True の場合、WebSocket アップグレードと HTTP リクエストの両方に適用されます。

使用例


procedure OnUnknownAuthentication(Connection: TsgcWSConnection; AuthType, AuthData: string;
  var aUser, aPassword: string; var Authenticated: Boolean);
begin
  if AuthType = 'Bearer' then
  begin
    if AuthData = 'jwt_token' then
      Authenticated := True
    else
      Authenticated := False;
  end
  else
    Authenticated := False;
end;

イベントに戻る