管理者および利用者に対して適切なアクセス権限が設定されていない場合、意図しない人物による情報アクセスが発生し、情報漏えいなどのセキュリティ事故が発生してしまう可能性があります。これらを防御するため、アクセス権限において、以下のセキュリティ対策を実施し、ルールに基づいたアクセスコントロールを行う必要があります。
ポイント
アクセス権限設定における留意点
全ユーザーに権限を付与できる特殊なアカウントの作成は禁止する
業務データなどの一般情報にアクセスできる一般アカウントの作成は禁止する
データベースの利用目的ごとに適切なアクセス権限を設定するため、以下の手順でアクセス要件を洗い出します。
「データベース管理用」、「オブジェクト管理用」、「データアクセス用」など、アカウントの利用目的を分類します。
「機能別」、「オブジェクト別」などアカウントの利用目的ごとに必要な権限を分類します。
それぞれの権限に基づいて、アカウントを分割します。
分割したアカウントのそれぞれについて、アクセスする必要がある必要最小範囲のデータと必要最低限のアクセス内容(参照、更新、作成、削除)を洗い出し、データベースへのアクセス要件を決定します。
分割された各アカウントについて、データベースへのアクセス要件に基づいて、必要最低限の権限を付与します。また、管理者権限は、アカウントを限定して付与します。
システムに対するアクセス要件の変化に対応するため、アクセス権限を定期的に見直し、不要なアクセス権限がないかを確認します。不要なアクセス権限が設定されている場合は、速やかにアクセス権限を修正します。
ポイント
アクセス権限は、GRANT文やREVOKE文で設定します。詳細は、“PostgreSQL文書”の“GRANT”および“REVOKE”を参照してください。