スキーマの設定
スキーマの設定APIを公開または非公開にする

APIを公開または非公開にする

この機能はアクセス制御を強化し、スキーマへの可視性を提供します。

アクセス制御によってフィールドやディレクティブへのアクセスが拒否された場合、APIには2つの動作方法があります:

公開モード:スキーマ内のフィールドは公開されており、パーミッションが満たされない場合、ユーザーはなぜパーミッションが拒否されたかの説明を含むエラーメッセージを受け取ります。この動作により、スキーマのメタデータが常に利用可能になります。

非公開モード:スキーマは各ユーザーに合わせてカスタマイズされ、そのユーザーが利用可能なフィールドのみが含まれます。そのため、禁止されたフィールドにアクセスしようとすると、そのフィールドは存在しないというエラーメッセージが表示されます。この動作により、スキーマのメタデータはそれにアクセスできるユーザーにのみ公開されます。

APIの可視性を定義する方法

APIの可視性(公開または非公開)を定義できるレベルは3つあります。優先順位の順に:

1. フィールドとディレクティブごとに個別に

このオプションは、設定の「Enable granular control?」オプションonのときに利用できます。

アクセス制御リストのエントリを編集する際に、一連のフィールドとディレクティブの可視性を定義できます:

個別の公開/非公開スキーマモード

2. スキーマ設定で

スキーマ設定で可視性を定義し、カスタムエンドポイントまたは永続クエリ全体に適用することができます:

スキーマ設定で設定された公開/非公開スキーマモード
スキーマ設定で設定された公開/非公開スキーマモード

3. 設定で定義されたデフォルトモード

スキーマ設定の値が"Default"の場合、設定で定義されたモードが使用されます:

デフォルトの公開/非公開スキーマモード
デフォルトの公開/非公開スキーマモード