0

メニューのホーム、プロフィール、ギャラリー、お問い合わせにアクセスする権利はありません。管理者オペレーターの 2 種類のユーザーがいます。たとえば、管理者ホームプロフィールお問い合わせメニューのみを表示します。オペレーターでは、ホームプロファイルメニューのみが表示されます。codeigniter のアクセス許可を区別する方法は?

私を助けてください、ありがとう:)

4

2 に答える 2

3

簡単な方法は、ユーザーを区別するためにプロファイル ID を提供することです。たとえば、管理者 1 とオペレータ ユーザー 2 の場合です。ビュー ファイルでメニューを表示する場合、プロファイル ID を使用してメニュー表示にいくつかの条件を設定します。

プロファイル ID をユーザー データと共にセッション データに保存することに注意してください。

于 2012-12-21T07:20:50.870 に答える
0

異なるユーザー タイプを持つことは、2 つ以上のタイプや、1 つの管理者権限が必要で別の管理者権限を必要としないユーザーを想定していない場合に有効です。それを行うためのより良い、またはより将来性のある方法は、役割を使用することです。

さまざまな役割を含む役割テーブルを作成します。これを使用するために、管理者とユーザーの役割があります。次に、RoleId と UserId を保持する結合テーブルを作成します。ユーザーがログインすると、セッション変数を作成し、保持するさまざまなロールの配列を入力します。保護が必要な特定のページがある場合は、必要な権限についてその配列を確認するだけです。

たとえば、ビジネス サイトがあるとします。ユーザー ログイン、メイン管理者ログイン、販売ログイン、倉庫ログインが必要です。議論のために、販売と倉庫には製品を編集する機能が必要であるとしましょうが、倉庫には価格の編集を許可すべきではありません。もちろん、さまざまなユーザー タイプを割り当てて、ページが読み込まれたときにそれらのユーザー タイプをチェックすることもできますが、必要なアクセス許可が増えれば増えるほど、面倒になります。ロールを使用して、倉庫と販売担当者に製品許可ロールを割り当て、販売のみが価格編集権限を取得します。

前述したように、2 つの別個のアクセス許可セットを持つ 2 つの別個のユーザー タイプのみが必要な場合、ロール ベースの認証はおそらくやり過ぎです。しかし、そうは言っても、さらに必要になる状況に備えて計画し、構築することは害にはなりません。

于 2012-12-21T12:30:53.687 に答える