読み取り専用セキュリティオプションの設定
読み取り専用オプションを構成して、読み取り専用フィールドを編集する機能を制御します。
読み取り専用フィールドは、特定の状況での変更を制限することを目的としています。さらに、システムには構成可能な読み取り専用オプションが用意されており、ユーザビリティとセキュリティのバランスを取りながら、要件に応じて読み取り専用フィールドの動作をカスタマイズできます。辞書レコードの 読み取り専用オプション フィールドを更新することで、読み取り専用の動作を調整できます。
利用可能な読み取り専用オプション
- インスタンスが構成されました
- オーストラリアのリリースより前に作成された読み取り専用フィールドのデフォルトの 読み取り専用オプション 値。下位互換性を維持し、非本番インスタンスで読み取り専用の動作をテストするために使用されます。
辞書レコードで [ 読み取り専用] オプション が [構成されたインスタンス] に設定されている場合、読み取り専用の動作は glide.read_only.legacy_read_only_behavior システムプロパティから派生します。デフォルトでは、このプロパティは client_script_modifiable に設定されています。これはオーストラリア以前の読み取り専用動作を優先し、クライアントスクリプトを使用して読み取り専用フィールドを変更できます。
- 読み取り専用を表示
- UI ではフィールドが読み取り専用として表示されますが、クライアントスクリプトやサーバー側の操作 ( TableAPI、 GraphQL、 GlideRecordSecure()など) によって読み取り専用フィールドを変更できます。
- 変更可能なクライアントスクリプト
- UI でフィールドを読み取り専用として表示し、クライアントスクリプトを使用して読み取り専用フィールドを変更できますが、バックグラウンドスクリプトや TableAPI、 GraphQL、 GlideRecordSecure() などのサーバー側 API からは変更できません。
- 厳格な読み取り専用
- UI でフィールドを読み取り専用として表示しますが、クライアントスクリプトとサーバーサイド API の両方からの変更を防ぎます。
読み取り専用動作のテスト
[インスタンス構成済み読み取り専用] オプションは、オーストラリアのリリースより前に作成された読み取り専用フィールドの下位互換性を維持し、他の読み取り専用オプションを本番インスタンスに実装する前に非本番インスタンスでテストすることもできます。
[読み取り専用] オプションが [インスタンス構成済み] に設定されている場合、読み取り専用の動作はglide.read_only.legacy_read_only_behaviorシステムプロパティによって決定されます。glide.read_only.legacy_read_only_behavior システムプロパティのデフォルト値は client_script_modifiable です。つまり、このフィールドは UI では読み取り専用として表示されますが、クライアントスクリプトによって変更できます。
非本番インスタンスで読み取り専用の動作をテストするには、システムプロパティを次の値で更新し、フィールドとクライアントスクリプトが期待どおりに動作することを検証します。
- display_read_only
- client_script_modifiable
- strict_read_only
たとえば、より厳格なセキュリティコントロールがクライアントスクリプトやその他のカスタマイズで引き続き機能することを確認するために、 glide.read_only.legacy_read_only_behavior プロパティを非本番インスタンスで strict_read_only するように設定し、動作をテストできます。非本番インスタンスで動作を確認した後、本番インスタンスの個々のフィールドを更新して、フィールドごとに [厳格な読み取り専用] オプションを使用できます。