0

私はスーパーユーザーのコンセプトを持つアプリケーションを開発しています。スーパー ユーザーは、アプリケーションへのすべてのアクセス権を持つユーザーです。したがって、ユーザーテーブルで最初に考えたのは、ID 1 のユーザーが私のスーパーユーザーになるということです。しかし、これはセキュリティ上の懸念の点でどれほど安全ですか? スーパーユーザーを定義するために使用できる他のロジックはありますか?

私はコーディング側にもっと重点を置いています。役割やその他のアクセス許可も実装しましたが、必要なのはゴーストユーザーのようなものです。ログインするたびに、アプリケーションの父のようにすべてにアクセスできます。彼のアクセスのために、ロール条件やアクセス条件を確認する必要はありません。出来ますか ?

ありがとう。

4

3 に答える 3

2

ロールを使用してみませんか? 「SuperUser」、「Admin」、「ReadOnly」、...またはおそらく0、1、2...を持つユーザーテーブルに列を作成し、コード内の定数/列挙可能と一致させます。スーパー ユーザーの変更、複数のスーパー ユーザーの作成、一時的なスーパー ユーザー権限の付与、他のロールの定義を簡単に実行できるようになりました。

于 2013-08-08T08:54:14.937 に答える
1

データベースの観点からは、2人以上のユーザーを定義し、それらに多かれ少なかれ権限を付与したり、ロールを操作したりすることは有効です。しかし、あなたが言ったように、それはアプリケーションに関するものです。したがって、データベースのセキュリティと並行して、次の観点からアプリケーションのセキュリティを考慮する必要があります。

  • どのユーザーがどの機能、メニュー項目、Web ページなどを取得できるか。
  • これをどのように構成およびパラメータ化できますかなど。

個人的には、DB 側よりもアプリケーション側に重点を置いています。たとえば、PHP + MySQL を考えると、2 人の DB ユーザー (オペレーター、管理者) がいますが、アプリケーション内に各 (アプリケーション) ユーザー用のデータベーステーブルがあり、DB のオペレーターまたは管理者ログインを割り当て、データベースのどの部分を定義するかを定義します。彼らが得るアプリケーション。

于 2013-08-08T08:55:21.237 に答える