TsgcWebSocketProxyServer › イベント › 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ベアラートークンやカスタムスキームです。AuthTypeパラメータにはスキーム名が含まれ、AuthDataにはクライアントが送信した生の認証情報が含まれます。アプリケーションはこれらを解析し、aUserおよびaPasswordの出力パラメータに値を設定して(セッションにユーザー名をタグ付けするため)、最終的にAuthenticatedをTrueに設定して接続を受け入れる(プロキシが代わりにアップストリームTCPセッションを開く)か、Falseに設定して拒否できます。

使用例


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;

イベントに戻る