sql >> データベース >  >> RDS >> Oracle

最良のユーザーロール権限データベース設計プラクティス?

    krokodilkoが彼のコメントに書いたように、それはあなたが必要とする柔軟性のレベルに依存します。
    私は次のように私のクライアントの1つに役割ベースの許可を実装しました:

    1. ユーザー(ユーザーID(PK)、ユーザー名(一意)、パスワード(ソルトおよびハッシュ! )、名、姓、電話番号など')
    2. 役割(役割ID(PK)、役割名(一意)、役割の説明)
    3. 権限(権限ID(PK)、権限名(一意))-タブ/画面/アクションはここに表示されます
    4. ユーザーからロール(ユーザーID、ロールID)-PKは両方の列を組み合わせたものです
    5. 権限への役割(役割ID、権限ID)-PKは両方の列を組み合わせたものです

    しかし、私の要件は可能な限り柔軟であるということでした。それはまだ成長しているシステムです(6年と数えています)。

    多くのアプリケーションでは、私の場合のように多対多ではなく、1対多の関係としてユーザーに役割を持たせることができると思いますが、どのアプリケーションでも、アクセス許可や役割をアクセス許可にハードコーディングすることはしません。

    >

    詳細な説明:役割ベースのセキュリティデータベース設計 #私は何を知っていますか?




    1. MIN()–MySQLの列の最小値を見つける

    2. MySQLはinnodbテーブルの行数を取得します

    3. 複数のテーブルで同じ値を検索する

    4. 別のフィールドで最大日付順のデータを選択します