Logo

機能:

アクセスコントロール

アクセスコントロール

GraphQLエンドポイントは、スキーマを通じてアクセス可能なあらゆるデータを返せるため、悪意のある攻撃者がプライベートな情報を取得できてしまう可能性があります。そのため、データを保護するためのセキュリティ対策を実装する必要があります。

アクセスコントロール

アクセスコントロールリストを使用すると、スキーマ内の各オペレーション、フィールド、ディレクティブにアクセスできるユーザーを定義できます。

  • すべてのユーザーのアクセスを無効にする
  • ユーザーがログイン中またはログアウト中の場合にアクセスを許可する
  • ユーザーが特定のロールを持っている場合にアクセスを許可する
  • ユーザーが特定の権限を持っている場合にアクセスを許可する
  • 訪問者が特定のIPアドレスまたはIP範囲からアクセスしている場合にアクセスを許可する
アクセスコントロールリストエディター
アクセスコントロールリストエディター

パブリック/プライベートスキーマ

スキーマ内の特定のフィールドやディレクティブへのアクセス権を持たないユーザーがアクセスを試みた場合、何が起こるべきでしょうか?

パブリック/プライベートAPIモードを使用することで、望ましい動作を制御できます。

パブリックAPIでは、スキーマ内のフィールドが公開されており、権限が満たされていない場合、ユーザーは権限が拒否された理由の説明を含むエラーメッセージを受け取ります。

プライベートAPIでは、スキーマは各ユーザーに合わせてカスタマイズされ、そのユーザーが利用できるフィールドのみが含まれます。そのため、禁止されたフィールドにアクセスしようとすると、そのフィールドは存在しないというエラーメッセージが表示されます。

個別のパブリック/プライベートスキーマモード

ニュースレターを購読する

Gato GraphQL のすべてのアップデートを把握しましょう。