Envoy OAuth2 Filter を使ったログイン
庄司です。 いくつか Envoy Proxy の JWT Authentication や External Authorization を使った認証や認可の記事を書いてきました。 今回は OAuth2 Filter を使った例を説明します。 あらためて説明すると、Envoy Proxy は C++ で書かれた軽量かつ高速なプロキシです。 Envoy Proxy は構成を動的に変更でき、ゼロダウンタイムで反映できる特徴を持っています...
記事を読む第5回 Open Policy Agent とサイドカーパターンによる認可の実装
庄司です。 前回の記事で、「挨拶の音声を生成する」コマンド (以降 Hello コマンドまたは Hello サービスといいます) を完成させました。 この記事では、このコマンドの実行権限チェックに Open Policy Agent (OPA) を使って説明します。 図のようにサービスは、3つのコンテナイメージで構成された、docker-compose または Pod です...
記事を読むEnvoy Proxy による HTTPS Proxy
庄司です。 「WebAuthn でパスワードの無い世界へ」の記事では、AWS Fargate を使って Keycloak を起動してデモンストレーション環境を構築しました。 記事で説明した環境は、Keycloak のための AWS Fargate 以外に、ロードバランサ (ALB) など時間課金のリソースも含んでいました...
記事を読むS3 の静的 Web サイトをセキュアに Envoy でホスティング
庄司です。 モダンな UI のフレームワークは静的なコンテンツとしてパッケージングされることが主流となっています。これは変化の激しい UI とそれと比較すれば比較的変化のスピードが遅くてよいバックエンドとの関係で理にかなっています。UI のこうした静的なコンテンツの配信では多くの SaaS 製品で CloudFront のような CDN が利用されています。しかし、エンタープライズで利用されるフロントエンドの場合には VPN を通じたアクセスのみを許可している場合が多くあります...
記事を読むEnvoy を使用して ID Token (OIDC) を検証する
庄司です。 Envoy proxy は API を使って動的に構成すると無停止で設定変更等を行うことができます。このような操作は 通常 Istio や AWS App Mesh のようなコントロールプレーンで行うことになります。 この一連の記事では Envoy proxy 単体の機能を説明するために静的な設定を用いて説明しています...
記事を読むEnvoy と Open Policy Agent を使用した認可
庄司です。 Envoy proxy は API を使って動的に構成すると無停止で設定変更等を行うことができます。このような操作は 通常 Istio や AWS App Mesh のようなコントロールプレーンで行うことになります。 この一連の記事では Envoy proxy 単体の機能を説明するために静的な設定を用いて説明しています。 認証についての記事で OpenID Connect の ID Token の検証について説明しています...
記事を読むS3 の静的 Web サイトを Envoy でホスティング
庄司です。 S3 に静的なコンテンツを配置して公開する場合、よく見られる構成は CloudFront とを組み合わせるパターンです。ほとんどの場合、これで問題ありません。しかし、一部のパターン、例えばエンタープライズで利用されるフロントエンドの場合には、VPN を通じたアクセスのみを許可している場合があります。このような場合、世界中の多数のユーザに低レイテンシーな配信を目的としている CloudFront のような CDN が適切とは言い難いものとなります...
記事を読む