オープンソースの販売サイト構築ソフト EC-CUBE についてのメモ。

権限によりナビゲーションを制限する

前提

  • 不要なメニューを非表示にすることで、操作性の向上を目指す
  • セキュリティを目的としたものではない
    • 直接URLを叩けば、アクセスできる。
    • メニュー以外からリンクしている箇所があれば、アクセスできる。(そこにも適用すりゃ良いって話もあるか)

対象

関連するチェンジセット

初期状態

システム設定 - メンバー管理 で、権限を「店舗オーナー」として登録すると下記のナビゲーション項目が非表示となる。

  • 基本情報管理 - サイト管理設定
  • 基本情報管理 - パラメータ設定
  • 基本情報管理 - マスタデータ管理
  • コンテンツ管理 - ファイル管理
  • デザイン管理 - ブロック編集
  • デザイン管理 - テンプレート設定
  • デザイン管理 - テンプレート追加
  • システム設定
  • OWNERS STORE

変更例

「規格管理」を非表示にする

/html/user_data/packages/default/css/admin_contents.css

  /* 権限 */
  x-dummy
  ,.authority_1 #navi-basis-control
  ,.authority_1 #navi-basis-parameter
  ,.authority_1 #navi-basis-masterdata
  ,.authority_1 #navi-contents-file
  ,.authority_1 #navi-design-bloc
  ,.authority_1 #navi-design-template
  ,.authority_1 #navi-design-add
  ,.authority_1 #navi-system
  ,.authority_1 #navi-ownersstore
+ ,.authority_1 #navi-basis-zip
  {
      /* display: none; --- IE で不具合 */
      height: 0;
      width: 0;
      overflow: hidden;
      border: none;
      visibility: hidden;
  }
  • 「authority_1」とは、権限「店舗オーナー」の意味。現状では他に、「authority_0」として「システム管理者」がある。
    • 「authority_2」と「authority_3」は、それぞれ「閲覧」と「販売担当」に割り当てされているが、現状では未実装である。
  • 「navi-basis-zip」とは、ナビゲーション「基本情報管理 - 郵便番号DB登録」の意味。下記のファイルで定義している。
    • /data/Smarty/templates/default/admin/main_frame.tpl
    • /data/Smarty/templates/default/admin/*/subnavi.tpl

ちなみに

ナビゲーション以外でも、非表示にすることは可能。極端な例としては、登録ボタンを非表示にすることで、閲覧専用ライクな表示にする事も可能だろう。

tips/authority.txt · 最終更新: 2008/07/23 15:22 by seasoft
© 2008-2019 Seasoft.