17

私は現在 CMS を作成していますが、既存の CMS が十分に堅牢なユーザー権限システムを持っていないことを誰か (ここにあったかもしれません) が批判したことを覚えています。私は方法を計画しましたが、それが少しきめが細かすぎるという通常の罠に陥っていると感じ、それを理解して実装することはエンドユーザーにとって恐ろしいことです。

権限を持つデフォルトのユーザーロールの範囲を持つことがこれに対する答えになると思うので、私の質問はこれだと思います:

CMS に表示したいデフォルトの役割と、これらに関連付けられる権限の種類は何ですか?

前もって感謝します!

4

9 に答える 9

20

少し前にこの質問をしたところ、次のような回答がありました。

admin           //Manage everything
manager         //Manage most aspects of the site
editor          //Scheduling and managing content
author          //Write important content
contributors    //Authors with limited rights
moderator       //Moderate user content
member          //Special user access
subscriber      //Paying Average Joe
user            //Average Joe
于 2009-12-11T18:24:05.550 に答える
8

RBACなどの既存のソリューションを調査しましたか? このようなシステムは、あなたがクラックしようとしている特定のナッツにとっては完全にやり過ぎである可能性が最も高いですが、少なくとも、正しい軌道に乗っているという自信を高めるのに役立ちます.

それはさておき、私が期待する一般的な役割は次のようなものです。

管理者- システムの完全な制御、ログの表示 (すべての変更をログに記録する必要があるため) などに加えて...

パブリッシャー- コンテンツをライブに追加できます...

作成者- コンテンツを作成できます

ただし、これらのロールがシステム全体にどのように適用されるかは、特定のユーザーがさまざまなコンテンツ領域/モジュールに対してさまざまな権限を持っている可能性があるため、注意が必要です。

于 2009-07-28T12:18:58.020 に答える
5

ほとんどのアプリケーションでは、CMSにも当てはまると思いますが、私の顧客は通常、権利指向のアプローチを好みます。これがその方法です:

  1. 主なアクションをリストします。CMSでは、次のようになります。コンテンツを作成および編集します。コンテンツを削除します。コンテンツを分類/分類します。コンテンツを検証します。コンテンツを公開します。ユーザーを管理します。等。
  2. ユーザーごとに許可または拒否するアクションを定義します

状況を少し改善するために、いくつかの役割(編集者、管理者)を作成して、一般的なユーザーの作成を容易にすることができます(役割が選択されたときにフォームに事前に入力することにより)。

于 2009-12-07T15:52:24.037 に答える
2

私は必ずしもあなたが今持っているきめの細かい制御システムを却下するわけではありません。適応可能なものがある場合は、簡素化されたインターフェイスを提供することで複雑さを隠すことに焦点を当てます(たとえば、ファサードパターンまたはアダプターパターンを使用します)。利点は、ユーザーに簡略化されたバージョンを提供することです(「admin」などの単純な権限は「「投稿」を削除できます」)が、後で必要になった場合に備えて、きめ細かい機能を保持します(たとえば、より複雑な権限処理では、削除を許可します)。投稿がカテゴリXの自分の投稿である場合の投稿)。次に、いくつかの場所でそのニーズに合わせて簡略化されたバージョンの代替を提供できます。

于 2009-12-12T11:39:13.863 に答える
2

管理者: すべての権限を持つ人

作成者: 特定のコンテンツに対するすべての権利を持っている人 (ブログを所有しているブログ作成者など) は、ユーザーを追加/招待してコラボレーション/コンテンツを表示する権限も持っています

共同編集者 : 作成者が権限を与えたコンテンツを編集/追加できる人。コンテンツを削除したり、共同編集者を招待/追加したりすることはできません。

閲覧者: 作成者が閲覧を招待した場合にコンテンツを閲覧できる人

編集者: あらゆる種類のコンテンツを承認/編集できる人

高度なユーザー/開発者が CMS を使用することを期待している場合、細かい制御を行うことは悪い考えではありません。しかし、初心者の CMS マネージャーにとっては、基本的な役割によってシステムがより使いやすくなります。

于 2009-12-13T18:59:00.747 に答える
2

Zend の ACL を使用していくつかの基本的な役割を拡張する Zend フレームワーク上に構築されたカスタム CMS があります (そのため、追加のユーザーに対して特にリソースを拒否したり、通常はアクセスできないリソースに他のユーザーがアクセスできるようにしたりできます)。私の基本的な役割は、次のように CMS ユーザーから Web サイトの「メンバー」にまで及びます (すべての認証を格納するために 1 つのユーザー テーブルを使用するだけです)。

デベロッパー

コンテンツを編集し、レイアウト、設定、構成を編集します。シェル スクリプトを呼び出して cron ジョブを強制実行できる特別なツールを使用します。

管理者

コンテンツの編集、レイアウトの編集、設定。

著者

コンテンツを編集します。

メンバー

ログイン画面、パスワード忘れ、不具合報告を閲覧できます。

現在、Zend には優れた ACL 実装が用意されているため、基本 ACL クラスを簡単に拡張し、基本ロールから拡張された新しいロールを追加できます。そのため、開発者ツールの 1 つ (パージまたはキャッシュ管理など) にアクセスできる "管理者" を作成するか、ブログの管理のみができるように (たとえばニュースではなく) 著者をロックすることができます。

于 2009-12-11T04:54:29.530 に答える
1

管理者 - ユーザーと以下のすべてを作成できます

編集者 - 他の投稿と以下のすべての投稿を編集できます

作成者 - 投稿を書いたり、自分の投稿を編集したりできます

于 2009-07-28T12:22:37.070 に答える
0

作成者- コンテンツの作成と編集を担当します。

編集者- 翻訳とローカリゼーションを含む、コンテンツ メッセージと配信スタイルの調整を担当します。

パブリッシャー- 使用するコンテンツをリリースする責任があります。

管理者- フォルダーとファイルへのアクセス許可の管理を担当します。通常は、ユーザー グループまたはロールにアクセス権を割り当てることによって達成されます。

消費者、視聴者、またはゲスト- コンテンツが公開または共有された後にコンテンツを読むか、または別の方法で取り込む人。

于 2015-12-16T19:07:44.707 に答える