Fleet Engine でのアカウント ロールと JWT の基本を確認したので、次は このセクションを確認して、認証の基本的な流れと、 認証オペレーションについて説明します。
セキュリティ設計
Fleet Engine のセキュリティ設計は、次の要素で構成されています。
- ロール:
<ph type="x-smartling-placeholder">
- </ph>
- IAM ロールは、サービスに対して許可されるアクティビティの範囲を定義します。 呼び出します。たとえば、ondemandAdmin や deliveryAdmin のロールは許可されます すべての操作を実行できるのに対し、driverSdkUser または deliveryUntrustedDriver ロールは最小限の位置情報の更新しか実行できません。
- IAM ロールはサービス アカウントに関連付けられます。
- リクエスト
<ph type="x-smartling-placeholder">
- </ph>
- JWT クレームは、呼び出し元が操作するエンティティをさらに制限します。 特定のタスクでも配送手段でもかまいません。
- Fleet Engine に送信されるリクエストには、常に JWT が含まれます。
- JWT はサービス アカウントに関連付けられているため、フリートに送信されたリクエストは サービス アカウントが関連付けられたサービス アカウントに、 JWT です。
- 適切な JWT をリクエストしてからフリートに渡す 低信頼環境で実行するコードは、最初に 完全に信頼できる環境で実行できます。
- Fleet Engine によるセキュリティ チェック
<ph type="x-smartling-placeholder">
- </ph>
- サービス アカウントに関連付けられた IAM ロールによって、 呼び出し元が API 呼び出しを発行できるようにします。
- リクエストで渡された JWT クレームは、正しい認証を エンティティの操作を行えます
クライアント アプリの認証フロー
次のシーケンス図は、これらのクライアント アプリの認証フローを示しています。 表示されます。
- フリート管理者は、次のようにアカウントを設定します。
<ph type="x-smartling-placeholder">
- </ph>
- サービス アカウントを作成する
- サービス アカウントに特定の IAM ロールを割り当てる
- サービス アカウントを使用してバックエンドを構成する
- クライアント アプリがサーバーに JWT をリクエストする。リクエスト元は ユーザー アプリ、モニタリング アプリのいずれかから選択してください。
- Fleet Engine は、各サービス アカウントに対して JWT を発行します。
- クライアント アプリは次のことを行います。
<ph type="x-smartling-placeholder">
- </ph>
- JWT を受信する
- JWT を使用して Fleet Engine に接続し、データの読み取りまたは変更を行う。 IAM ロールによって異なります。
次のステップ
- Fleet Engine プロジェクトを作成します。
- サーバーから JSON Web Token を発行する方法を学習する。