postgresql
データベースは機密情報が格納される場所であり、その重要性からできるだけ限定されたユーザだけがアクセスできるようにしたいと考えるのは当然です。一歩進めて、理想的にはデータベースへのアクセスに必要なユーザを静的に設定するのではなく、都度必要に…
PostgreSQLを使っているとき、日本語がうまくソートできない。これはいわゆるCOLLATION (照合順序)の設定によります。 色々とこの順番を設定できるため、今回その設定を試してみました。 基礎知識 Postgresqlでは、それぞれのデータタイプはcollationを持っ…
本番環境のシステム運用を考えたとき、データベースの中身を参照せざるを得ないことは多くあります。 データは貴重な情報資産であるため、運用者に対してすら、そのデータ参照を厳しく制限せねばなりません。 例えば要配慮個人情報を運用者に対して簡単に参…
いつも感覚&Google検索でやっていたのですが、公式の情報源はこちら。 PostgreSQL: Documentation: 15: 34.1. Database Connection Control Functions 基本的なフォーマットは以下のようになります。 postgresql://[user]:[password]@[host]:[port]/[databas…
本エントリでは、Docker ComposeでPostgreSQLを立ち上げるとき、特定のデータベース・スキーマ配下にテーブルを作成する方法を紹介します。 前提としてのpostgresイメージの持つ自動SQL実行機能 データベースをもつシステムをローカルで開発するにあたり、Do…
このエントリでは、マルチテナントアプリケーションを構築する場合に、テナントに紐づくデータをどう安全に扱うかという点でRLSについて記載します。 特に、1ユーザが複数テナントに関する権限を持つ場合にRLSをどう適用すべきか、頭を悩ませました。 マルチ…
データストアにPostgresqlを採用し、アプリケーションから当該DBに対してDB接続する。そういうユースケースは枚挙に暇がありません。 データベース・スキーマの作成 アプリケーション用ユーザーの作成 ユーザーのデフォルトスキーマ切り替え ユーザーへの権…