バージョン選択

フォーラム

メニュー

オンライン状況

55 人のユーザが現在オンラインです。 (48 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 55
もっと...

サイト内検索

 > フロント機能 > 認証画面

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ec-akiran
投稿日時: 2016/6/7 14:28
対応状況: 確認中
半人前
登録日: 2016/5/26
居住地:
投稿: 12
認証画面
EC-CUBE3、HP制作初心者です。

EC-CUBE3にて、会員制サイトを構築すべく、
現在、BASIC認証にて制御を掛けております。

一部のスタッフから、BASIC認証より最初に
ログインできる画面を作った方が良いとの
助言を受けました。

ログインするID,PWは、staticで構わないので、
簡単にできる方法はないでしょうか?

ご教授願えれば幸いです。


DELIGHT
投稿日時: 2016/6/7 14:56
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 572
Re: 認証画面
EC-CUBEのバージョンが分かりませんが、3.0.10であると仮定して下記の箇所にアクセスルールの設定があります。

https://github.com/EC-CUBE/ec-cube/blob/3.0.10/src/Eccube/Application.php#L552

この一番下に全てのページ(^/)と会員認証(ROLE_USER)の組み合わせを追加すれば全てのページで会員認証が必要になります。(staticではありませんが)


----------------
+ DAISY inc. -------------------- +
EC-CUBE構築・カスタマイズサービス
EC・WEB構築などお気軽にご相談ください。

デイジー株式会社
http://daisy.link/

ec-akiran
投稿日時: 2016/6/7 17:20
対応状況: −−−
半人前
登録日: 2016/5/26
居住地:
投稿: 12
Re: 認証画面
ご連絡ありがとうございました。

記入漏れでした。
バージョンは、EC-CUBE3.0.10です。

仰っているのは、

$this['security.access_rules'] = array(
array("^/{$this['config']['admin_route']}/login", 'IS_AUTHENTICATED_ANONYMOUSLY'),
array("^/{$this['config']['admin_route']}", 'ROLE_ADMIN'),
array('^/mypage/login', 'IS_AUTHENTICATED_ANONYMOUSLY'),
array('^/mypage/withdraw_complete', 'IS_AUTHENTICATED_ANONYMOUSLY'),
array('^/mypage/change', 'IS_AUTHENTICATED_FULLY'),
array('^/mypage', 'ROLE_USER'),
);

の部分でしょうか。


この一番下に全てのページ(^/)と会員認証(ROLE_USER)の組み合わせを追加すれば全てのページで会員認証が必要になります。(staticではありませんが)

とは、具体的にはどこに何を入れて良いやら・・

大変申し訳ありませんが、もう少しだけ教えてください。
よろしくお願い申し上げます。
DELIGHT
投稿日時: 2016/6/7 18:05
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 572
Re: 認証画面
$this['security.access_rules'] = array(
    array("^/{$this['config']['admin_route']}/login", 'IS_AUTHENTICATED_ANONYMOUSLY'),
    array("^/{$this['config']['admin_route']}", 'ROLE_ADMIN'),
    array('^/mypage/login', 'IS_AUTHENTICATED_ANONYMOUSLY'),
    array('^/mypage/withdraw_complete', 'IS_AUTHENTICATED_ANONYMOUSLY'),
    array('^/mypage/change', 'IS_AUTHENTICATED_FULLY'),
    array('^/mypage', 'ROLE_USER'),
    array('^/', 'ROLE_USER'), // 追加
);

EC-CUBE2系と比べ3系は仕組みがかなり複雑になっています。
上記の修正は私が「多分これでいいだろう」という推測と簡単なテストを行なっただけで書いています。

そのため上記修正によって発生する不具合や、私の想定していない仕様(例えば会員登録画面だけは認証を外したい等)があるかもしれません。
その際にソースコードを見て、ある程度目星がつくだけの知識がないと迅速な対応が出来ません。

余計なお世話と思われるかもしれませんが、3系のカスタマイズに挑戦するのはもう少し後にしてはいかがでしょうか?
2系なら3系よりも構造が分かりやすく、良い意味で枯れた技術です。どうしても3系というなら業者に依頼するとか、
あるいはテスト環境で色々触ってEC-CUBE3やSymfony(EC-CUBE3のベース)の理解を深めてから再度挑戦するという手もあります。

フォーラムで質問をしても毎回必ず、毎回迅速に回答があるとは限りませんし、何か急な問題が発生した時のことが心配です。


----------------
+ DAISY inc. -------------------- +
EC-CUBE構築・カスタマイズサービス
EC・WEB構築などお気軽にご相談ください。

デイジー株式会社
http://daisy.link/

nyorai
投稿日時: 2016/6/10 16:13
対応状況: −−−
仙人
登録日: 2015/8/21
居住地:
投稿: 302
Re: 認証画面
会員登録ページは除外するような場合は、DELIGHTさんがおっしゃっている設定に加え、/entryを"IS_AUTHENTICATED_ANONYMOUSLY"で指定してあげれば可能です。


$this['security.access_rules'] = array(
    array("^/{$this['config']['admin_route']}/login", 'IS_AUTHENTICATED_ANONYMOUSLY'),
    array("^/{$this['config']['admin_route']}", 'ROLE_ADMIN'),
    array('^/mypage/login', 'IS_AUTHENTICATED_ANONYMOUSLY'),
    array('^/mypage/withdraw_complete', 'IS_AUTHENTICATED_ANONYMOUSLY'),
    array('^/mypage/change', 'IS_AUTHENTICATED_FULLY'),
    array('^/mypage', 'ROLE_USER'),
    array('^/entry', 'IS_AUTHENTICATED_ANONYMOUSLY'), // 会員登録ページは除外
    array('^/', 'ROLE_USER'), // 追加
);



EC-CUBE3の認証は、SymfonyのSecurityというライブラリを利用しています。少し難しいかもしれませんが、こちらも参考にしてもらえばよいかと思います。
http://docs.symfony.gr.jp/symfony2/book/security.html
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,721名です
総投稿数は109,953件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1638
8
red
1570
9
mcontact
1286
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.