システム構成
TWPのシステム構成についてご説明します。
アーキテクチャ概要
TWPはクラウドネイティブなアーキテクチャで構築されています。
┌─────────────────────────────────────────────────────┐
│ ユーザー │
│ (Webブラウザ) │
└─────────────────────┬───────────────────────────────┘
│
┌─────────────────────▼───────────────────────────────┐
│ フロントエンド │
│ (Next.js) │
└─────────────────────┬───────────────────────────────┘
│
┌─────────────────────▼───────────────────────────────┐
│ バックエンドAPI │
│ (Laravel) │
└─────────────────────┬───────────────────────────────┘
│
┌─────────────┼─────────────┐
│ │ │
┌───────▼───────┐ ┌───▼───┐ ┌───────▼───────┐
│ データベース │ │ 検索 │ │ ストレージ │
│ (MySQL/DynamoDB)│ │エンジン│ │ (S3互換) │
└───────────────┘ └───────┘ └───────────────┘技術スタック
| レイヤー | 技術 |
|---|---|
| フロントエンド | Next.js、React、TypeScript |
| バックエンド | Laravel(PHP) |
| データベース | MySQL、DynamoDB |
| 検索エンジン | OpenSearch |
| ストレージ | S3互換ストレージ |
| インフラ | AWS |
セキュリティ
認証・認可
- JWT(JSON Web Token)による認証
- ロールベースのアクセス制御
- 2要素認証(2FA)対応
- OAuth 2.0 / SSO連携(Microsoft、Google)
データ保護
- 通信の暗号化(HTTPS)
- データベース暗号化
- 監査ログ
マルチテナント
TWPはマルチテナントアーキテクチャを採用しており、企業ごとにデータが完全に分離されています。
- テナント間のデータ分離
- テナント単位の設定・カスタマイズ
- 独立したストレージ領域