Spring SecurityのCORS設定ガイド

Spring SecurityのCORS設定ガイド - クロスオリジンリクエストの安全な許可

CORSの基本概念、@CrossOrigin/CorsConfiguration/CorsFilterの使い分け、プリフライトリクエストの処理、本番環境向けの安全なCORS設定を解説します。フロントエンドとバックエンドを分離した構成で、Spring Securityを使って安全にCORSを設定できるようになるガイドです。

Spring SecurityのCSRF対策とSPA対応

Spring SecurityのCSRF対策 - トークン管理とSPA対応の設定

Spring SecurityでのCSRF攻撃対策を徹底解説。CsrfFilterの処理フロー、CSRFトークンの生成・検証の仕組み、CookieCsrfTokenRepositoryによるSPA対応設定、REST APIでCSRFを無効化する判断基準まで、実践的な実装パターンを紹介します。

REST APIの設計原則とエンドポイント設計のガイド

REST APIの設計原則を理解するための実践ガイド

REST APIの設計原則を網羅的に解説します。RESTfulの6つの制約条件(Uniform Interface、Stateless等)、エンドポイント設計のベストプラクティス、HTTPメソッドとリソースの対応、ステータスコードの使い分け、避けるべきアンチパターンを実践的な視点で説明します。

NestJSとSwaggerによるAPI仕様書生成

NestJS OpenAPI - @nestjs/swaggerで自動的にAPI仕様書を生成する

@nestjs/swaggerパッケージの導入からSwaggerModule.setup()による設定、@ApiTags()、@ApiOperation()、@ApiResponse()等のデコレータを活用したAPI仕様書の自動生成方法を解説します。

NestJS REST APIエンドポイントの実装

NestJS REST API開発 - @Get、@Post、@Put、@DeleteでCRUDエンドポイントを実装する

@Controller内でのHTTPメソッドデコレータの使い方、@Param、@Query、@Body、@Headersによるリクエストデータの取得、DTOパターンによるリクエスト・レスポンスの型定義を解説します。RESTful APIの設計原則に従った実装方法を学びます。

Spring BootとREST APIのイメージ

Spring Boot REST APIのレート制限 - Bucket4jによるリクエスト制御

Bucket4jによるトークンバケットアルゴリズムの実装、FilterやInterceptorでのレート制限適用、Redis連携による分散環境でのレート制限を解説します。

Spring BootとREST APIのイメージ

Spring Boot REST APIの分散トレーシング - Micrometer Tracingでリクエストを追跡する

分散トレーシングの概念、Micrometer TracingとBrave/Zipkinの連携、Trace ID・Span IDの仕組み、ログへのトレース情報付与を解説します。

Spring BootとREST APIのイメージ

Spring Boot REST APIの監視 - Actuatorでヘルスチェックとメトリクス収集を実装する

Spring Boot Actuatorの導入、ヘルスチェックエンドポイント(/actuator/health)、カスタムヘルスインジケータの実装、Prometheusメトリクス形式でのエクスポートを解説します。

Spring BootとREST APIのイメージ

Spring Boot REST APIの統合テスト - @SpringBootTestとTestcontainersによる本番に近いテスト環境

@SpringBootTestによる統合テスト、TestRestTemplateを使ったAPIテスト、Testcontainersによるデータベースコンテナの利用、@DynamicPropertySourceによる設定の動的注入を解説します。

Spring BootとREST APIのイメージ

Spring Boot REST APIのユニットテスト - MockMvcによるコントローラテスト

@WebMvcTestによるスライステスト、MockMvcを使ったリクエスト・レスポンスの検証、@MockitoBean によるサービス層のモック化、JSONパスによるレスポンス検証を解説します。

Spring BootとREST APIのイメージ

Spring Boot REST APIのHATEOAS実装 - リンクベースのAPIナビゲーション

Spring HATEOASの導入、RepresentationModel、EntityModel、CollectionModelの使い方、WebMvcLinkBuilderによるリンク生成、HAL形式のレスポンス設計を解説します。

Spring BootとREST APIのイメージ

Spring Boot REST APIのドキュメント自動生成 - SpringDocでOpenAPI仕様書とSwagger UIを導入する

SpringDoc OpenAPIの導入、@Operation、@Parameter、@Schema等のアノテーション、Swagger UIによるAPIテスト、OpenAPI仕様書のエクスポートを解説します。

Spring BootとREST APIのイメージ

Spring Boot REST APIの監査ログ - データ変更履歴を記録する

監査ログの要件と設計パターン、Spring Data JPAの@CreatedBy・@LastModifiedBy・@CreatedDate・@LastModifiedDateによる自動監査、Envers(Hibernate Envers)による履歴テーブル管理を解説します。

Spring BootとREST APIのイメージ

Spring Boot REST APIのリクエストログ - リクエスト・レスポンスの内容をログ出力する

CommonsRequestLoggingFilterによるリクエストログ、カスタムFilterによるリクエスト・レスポンスボディのログ出力、ContentCachingRequestWrapper/ResponseWrapperの活用を解説します。

Spring BootとREST APIのイメージ

Spring Boot REST APIの構造化ログ - JSON形式でログを出力する

構造化ログのメリット、Logstash Logback Encoderによる JSON形式出力、MDC(Mapped Diagnostic Context)によるコンテキスト情報の付与を解説します。