これは React フロントエンドと Express.js バックエンドで構成されたサンプルアプリケーションです。Amazon Verified Permissions を統合するための追加コード、Cedar スキーマ、Cedar ポリシーが含まれています。
finish プロジェクトは次の3つのディレクトリで構成されています。
backend/ # Express.js の API サーバー
frontend/ # React の Web アプリケーション
scripts/ # 開発・デプロイ用のユーティリティスクリプト
バックエンドは、ペットの管理用 RESTful API を提供する Express.js アプリケーションです。エンドポイントは次のとおりです。
GET /health- サービスのヘルスチェックGET /api/pets- すべてのペット一覧GET /api/pets/:id- ペット詳細の取得POST /api/pets- ペットの作成PUT /api/pets/:id- ペットの更新DELETE /api/pets/:id- ペットの削除
フロントエンドは次のページを含む React アプリケーションです。
- Dashboard - ペットの概要
- Pet List - ペットの一覧・管理
- Pet Details - ペット情報の閲覧・編集
- Create Pet - 新規ペットの追加
scripts ディレクトリには、開発、デプロイ、インフラ構築向けのユーティリティスクリプトが含まれます。
run-backend-dev.sh- バックエンドを開発モードで起動run-frontend-dev.sh- フロントエンドを開発モードで起動setup-infrastructure.sh- 必要な AWS インフラをセットアップprepare-cedar-schema.sh- AWS CLI で利用する Cedar スキーマ形式へ更新convert_cedar_policies.sh- AWS CLI で利用する Cedar ポリシー形式へ更新
- Node.js 16 以上
- npm 7 以上
- 次のリソースを作成できる権限を持つ AWS アカウント
- Cognito ユーザープール
- DynamoDB テーブル
- Verified Permissions ポリシーストア
- ローカル環境で設定済みの AWS CLI
アプリケーションを初めて実行する際は、以下の手順に従ってください。
-
インフラのセットアップ 設定済みの AWS アカウントに Cognito ユーザープールと DynamoDB テーブルを作成します。
cd scripts ./setup-infrastructure.sh -
アプリケーションの起動 依存関係のインストールと基本的な環境設定を行います。次を 2 つのターミナルで実行します。
cd scripts ./run-backend-dev.shcd scripts ./run-frontend-dev.sh -
アクセス方法:
- フロントエンド: http://localhost:3001
- バックエンド API: http://localhost:3000
初期セットアップ後にアプリケーションを起動する手順は次のとおりです。
- アプリケーションを起動
別々のターミナルで実行します。
cd backend npm run devcd frontend npm start - アクセス方法
- フロントエンド: http://localhost:3001
- バックエンド API: http://localhost:3000