PHP 権限に関する質問

WBOY
WBOYオリジナル
2016-06-13 13:00:01778ブラウズ

PHP 権限の問題について
目的の説明:
システムにはさまざまなモジュールが含まれており、理論的には、それらは多くのサブモジュールに分割されています。各モジュールにさまざまな権限操作を実装します。
追加、削除、変更、確認、ダウンロード、投稿、アップロードなどの権限があり、これらの権限は権限テーブルに対応しており、新しい権限を追加できます。権限テーブルのデータ構造(権限ID、権限名、備考)。
各モジュールには、権限テーブルに 1 つ以上の権限が含まれています。親モジュールの権限は、サブセット モジュールには継承されません。つまり、サブセット モジュールの親モジュールには変更権限がありません。権限は継承されます。
ユーザーの権限はユーザー グループから継承され、ユーザーの権限はユーザー グループの権限を調整することによって制御されます。ユーザーは 1 つのユーザー グループにのみ所属でき、ユーザー グループは複数のユーザーを持つことができます。

このような状況で権限の割り当てをどのように実装するかという問題を解決します
-----解決策---------
それは何もありません。ユーザーグループを承認してから、ユーザーのユーザーグループを決定し、それらをすべて選択します。 権限は継承されないため、現在のモジュール ID の権限を確認するだけで済みます。これは非常に簡単です。

-----解決策------------- -- -----Thinkphp のアプローチが参考になります! rbac、バックグラウンド権限を管理するのに非常に便利です。

------解決策----------------------ユーザーの権限は、ユーザーの権限であると言っているのではありませんかグループは?
ユーザー権限はユーザー グループから継承され、ユーザー グループの権限を調整することでユーザー権限を制御できます。 すべてのグループ権限をキャッシュ ファイルに保存したのに、なぜデータベースを確認する必要があるのでしょうか?

ユーザーがログインすると、そのユーザーが所属するグループがセッションに保存されます
モジュールに入るときに、対応するグループの権限キャッシュ ファイルをロードします。コード形式で保存します。
を含めるだけです。 モジュールの権限を確認し、適切なアクションを実行してください。以上です

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。