サポート » 使い方全般 » ページのパスワード保護について

  • 解決済 umepon

    (@umepon)


    表題の件についてなのですが、客先の依頼で一部のページにパスワードを
    かけることになりました。

    が、そのパスワードが固定したものではなく、エンドユーザーがランダムに発行された
    番号(乱数)を打ち込むといったものです。
    ですので、管理画面でパスワードを設定することもできません。

    ランダムな、または桁数その他も適当な文字を打ち込めば表示できるような
    ことは可能なのでしょうか?
    一応客先からは、適当な文字を打ち込んで表示でも良いという返答は返ってきてる
    のですが果たしてそんなことが出来るのか。。。
    ちょっと困っています。

8件の返信を表示中 - 1 - 8件目 (全8件中)
  • shokun0803

    (@shokun0803)

    そのパスワードが固定したものではなく、エンドユーザーがランダムに発行された番号(乱数)を打ち込むといったものです

    どこでパスワードを発行するのですか?

    例えば同じサイト上のwordpress上から発行とかでなければ発行したパスワードをwordpressが知らないので当然認証できませんよね?

    wordpressが適当にパスワードを発行してwordpressが認証するとかだと、他にユーザーの登録や何らかの認証がなければパスワード発行の意味がないですよね?

    どのようなシステムを検討しているのでしょうか。

    umepon

    (@umepon)

    どこでパスワードを発行するのですか?

    システムは旅行代理店が発行するクーポン雑誌なのですが
    旅券を発行するときに振られる旅券番号が、パスワードの代わりになるといった具合です。

    wordpressが適当にパスワードを発行してwordpressが認証するとかだと、他にユーザーの登録や何らかの認証がなければパスワード発行の意味がないですよね?

    確かに全く意味のないパスワードなのですが
    そういった「適当なパスワード」でページが表示できるか
    どうかを質問しました。

    shokun0803

    (@shokun0803)

    ん~、つまり疑似パスワードなのですか?
    それとも「旅券を発行するときに振られる旅券番号」をすべて記録して利用するのでしょうか?
    パスワードロックがかかってるように見せかけるだけなのか、本当にロックするのかでも違ってくると思います。

    umepon

    (@umepon)

    ん~、つまり疑似パスワードなのですか?

    はい、そうです。

    パスワードロックがかかってるように見せかけるだけなのか、本当にロックするのかでも違ってくると思います。

    見せ掛けですね。
    単にクーポン券を使用する店舗サイドが、ちゃんとその代理店を経由してるかどうかの
    確認のためにワンクッションを置くというだけのようです。

    shokun0803

    (@shokun0803)

    見せ掛けでよければループを表示する前にパスワード入力ページをはさんで、わざとGETで飛ばしたりすればそれっぽく見えるような気がします。

    具体的ではないですが、

    ・phpでgetを確認
    ・getが送信されていなければパスワードページを表示
    ・getが送信されていればループを表示

    というような構成になるでしょうか。

    具体的なソースが入用ですか?

    umepon

    (@umepon)

    あ、そうかなるほど。
    今までパスワードページがあって、実はそこには特にパスワードを設定してなくて
    適当な文字列を入力してもページを表示できるというのを想像してましたが
    パスワードページ(っぽい)ものを用意して、文字入力は適当で
    enterなどが押下されれば、そのページに飛ぶってのを作成すればよいのですね。

    shokun0803

    (@shokun0803)

    適当ですが・・・

    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
    
    <?php if( !$_GET['pass'] ) : // passが送られてない ?>
    <h2><?php the_title(); ?></h2>
    <form action="<?php the_permalink() ?>" method="get">
    	<input type="password" name="pass" />
    	<input type="hidden" name="p" value="<?php echo $post->ID; ?>" />
    	<input type="submit" />
    </form>
    <?php else : // passが送られた ?>
    ~通常のループの中身~
    <?php endif; ?>
    
    	<?php endwhile; else: ?>
    
    		<p><?php _e('Sorry, no posts matched your criteria.', 'kubrick'); ?></p>
    
    <?php endif; ?>

    的な感じでしょうか。
    特に入力チェックなどしていませんので、適当に。参考になれば。

    umepon

    (@umepon)

    わざわざソースまで。。。
    丁寧にありがとうございます。

    参考にさせていただきます。

8件の返信を表示中 - 1 - 8件目 (全8件中)
  • トピック「ページのパスワード保護について」には新たに返信することはできません。