OAuth 2.0 Server
sgcWebSockets の HTTP サーバーおよび WebSocket サーバー向けのサーバーサイド OAuth 2.0 保護コンポーネントです。JWT 検証または RFC 7662 イントロスペクションによりアクセストークンを検証します。
sgcWebSockets の HTTP サーバーおよび WebSocket サーバー向けのサーバーサイド OAuth 2.0 保護コンポーネントです。JWT 検証または RFC 7662 イントロスペクションによりアクセストークンを検証します。
軽量なリソースサーバーコンポーネントです。JWT 署名検証または RFC 7662 トークンイントロスペクションで受信ベアラートークンを検証し、解析済みクレームをアプリケーションに公開します。
TsgcHTTP_OAuth2_Server
Windows, macOS, Linux, iOS, Android
Enterprise
JWT 鍵(またはイントロスペクション URL)を設定して TsgcWebSocketHTTPServer.OAuth2 に接続するだけで、ハンドラーが発火する前に受信リクエストのトークンが検証されます。
uses
sgcWebSocket, sgcHTTP;
var
Server: TsgcWebSocketHTTPServer;
OAuth2: TsgcHTTP_OAuth2_Server;
begin
OAuth2 := TsgcHTTP_OAuth2_Server.Create(nil);
OAuth2.OAuth2Options.JWT.Algorithms.HS.Secret := 'shared-secret';
Server := TsgcWebSocketHTTPServer.Create(nil);
Server.Port := 8443;
Server.SSL := True;
Server.Authentication.OAuth2.Enabled := True;
Server.Authentication.OAuth2.Server := OAuth2;
Server.Active := True;
end;
// uses: sgcWebSocket, sgcHTTP
TsgcHTTP_OAuth2_Server *OAuth2 = new TsgcHTTP_OAuth2_Server(this);
OAuth2->OAuth2Options->JWT->Algorithms->HS->Secret = "shared-secret";
TsgcWebSocketHTTPServer *Server = new TsgcWebSocketHTTPServer(this);
Server->Authentication->OAuth2->Enabled = true;
Server->Authentication->OAuth2->Server = OAuth2;
Server->Active = true;
JWT 検証またはイントロスペクション検証済みのアクセストークンで HTTP および WebSocket エンドポイントを保護するリソースサーバーコンポーネントです。
静的鍵または JWKS エンドポイントに対する内蔵 JWT 検証器(HS / RS / ES / EdDSA)です。自己完結型トークンの場合、発行者への往復が不要です。
RFC 7662 に従って OAuth2Options.IntrospectionURL を設定すると、コンポーネントが受信トークンを発行者に POST し、有効/無効の結果を TTL 付きでキャッシュします。
OAuth2Options.RequiredScope を設定すると、指定したスコープを持つトークンのみアクセスを許可します。OnAuthError が拒否理由を報告します。
HTTP リクエストと WebSocket アップグレードの両方に対応しています。アップグレード時の Authorization ヘッダー(またはクエリトークン)が OnConnect の前に検証されます。
カスタムクレーム検証(マルチテナント aud、動的スコープマッピング、アカウントステータス)のために OnVerify を実装します。Accept = False を返すと 401 でショートサーキットします。
TsgcHTTP_OAuth2_Server_Provider はこのコンポーネントを完全な認可サーバー(発行者)に拡張します。クライアント/リフレッシュトークンを永続化する authorize、token、revoke エンドポイントを提供します。
コンポーネントリファレンスへの直接リンク、すぐに実行できるデモプロジェクトの入手、体験版のダウンロードができます。
| オンラインヘルプ — TsgcHTTP_OAuth2_Server このコンポーネントのプロパティ、メソッド、イベントの完全なリファレンスです。 | 開く | |
| デモプロジェクト — Demos\20.HTTP_Protocol\02.OAuth2_Authentication すぐに実行できるサンプルプロジェクトです。sgcWebSockets パッケージに同梱されています。以下から体験版をダウンロードできます。 | 開く | |
| 技術ドキュメント (PDF) このコンポーネントの機能、クイックスタート、Delphi および C++ Builder 向けのコードサンプル、一次資料のリファレンスを掲載しています。 | 開く | |
| ユーザーマニュアル (PDF) ライブラリのすべてのコンポーネントを網羅した総合マニュアルです。 | 開く |