納品書等のPDFが未ログイン状態でも見れてしまいます

フォーラム バグ報告 納品書等のPDFが未ログイン状態でも見れてしまいます

  • このトピックには3件の返信、2人の参加者があり、最後にあつおにより4年、 5ヶ月前に更新されました。
4件の投稿を表示中 - 1 - 4件目 (全4件中)
  • 投稿者
    投稿
  • #90401
    あつお
    参加者

    最近PDF出力関連のカスタマイズを行っていて気が付いたのですが、納品書等のPDFが管理画面にログインしていない状態でも閲覧できることがわかりました。
    条件としてはゲスト購入の受注データです。
    会員が購入したデータは「No permission」になります。

    usceshop.class.php

    の中の該当箇所

    if( !is_user_logged_in() && !$this->is_order( $mid, $oid ) )

    この分岐ではゲスト購入の場合はtrueが返ってきますので未ログイン状態でも「No permission」はスルーされます。

    私が行った対処としてその後に設置されてるフィルターで再度ログインの分岐をかけました。

    function do_not_view_not_logged_in( $order_print ) {
        if( !is_user_logged_in() ) {
            die( 'Error' );
        }
        return $order_print;
    }
    add_filter( 'usces_filter_orderpdf_path', 'do_not_view _not_logged_in' );
    add_filter( 'usces_filter_orderpdf_path_ex', 'do_not_view _not_logged_in' );

    PDFには住所等の個人情報が書かれてますので、未ログインでも見えてしまうのはあまりよろしくないと思います。

    アップデートで対応できましたらお願いします。

    ——————————————-
    WordPress のバージョン:5.4.2–ja
    Welcart のバージョン:1.9.31
    PHP のバージョン:7.3.16
    ご利用のテーマ:デフォルトテーマ
    症状を確認したブラウザ:Chrome
    サーバー:Xserver
    SSLの利用:常時SSL
    ——————————————–

    #90402
    あつお
    参加者

    ※コード修正です。

    function do_not_view_not_logged_in( $order_print ) {
        if( !is_user_logged_in() ) {
            die( 'Error' );
        }
        return $order_print;
    }
    add_filter( 'usces_filter_orderpdf_path', 'do_not_view_not_logged_in' );
    add_filter( 'usces_filter_orderpdf_path_ex', 'do_not_view_not_logged_in' );
    • この返信は4年、 5ヶ月前にあつおが編集しました。
    #90409
    yskysmr
    キーマスター

    こんにちは。

    ご報告ありがとうございます。仰るとおりの症状を確認いたしました。Welcart を修正いたしますので、次のリリースまでお待ちいただけますでしょうか。この度はご不便をおかけしまして、申し訳ございません。

    #90422
    あつお
    参加者

    確認・返信ありがとうございます。
    お手数おかけしますがご対応のほど、どうぞよろしくお願いします。

4件の投稿を表示中 - 1 - 4件目 (全4件中)
  • このトピックに返信するにはログインが必要です。