「Admin SSL」がWordPress2.5に対応。

WordPressの管理画面をSSLでセキュリティ強化するプラグイン『Admin SSL』。
WP2.5では動かなかったんですが、開発者が別の人に引き継がれ、この度WordPress 2.5に対応した模様です。これからテストするところですが、ご報告します。

■オリジナル版のサイト:
『Haris.tv』
http://haris.tv/2007/04/24/admin-ssl-new-wordpress-plugin/

■WP2.5対応版のサイト:
『bengreen』
http://www.kerrins.co.uk/blog/admin-ssl/ 
オリジナル版の作者Harisさんは開発に時間を割けない、ということで今後は後者のサイトからの配付になるようです。benさんガンバレ。donateいたします。

■新機能:
  • WordPress MUにも対応
  • セキュア化するURLの追加機能
  • 設定画面を用意
そして
  • たくさんのバグフィックス
  • 完全に書き直されたリダイレクトシステムで、前バージョンより安定

■その他仕様:
  • WP2.2以上/独自SSL(Private SSL)と共有SSL(Shared SSL)両対応
  • WPMU1.3以上/独自SSL(Priveate SSL)のみ対応

■わかっているの問題:
  • キャッシュ系のプラグインと非互換

ところで、今回のバージョンでは、標準ではAdminのそれぞれのページはセキュア化されていないようです(ログインプロフィールのみ)…WP2.5.1の速度改善のアドバンテージを得るため。もしそれぞれのページもセキュア化する場合は、設定画面の「additional urls box」に「wp-admin/」を加えるように、とのこと。

※1.0プレリリース版を使用されていた方は、正規版をインストールする前にデータベースオプションをリセットしないとリダイレクトエラーを起こすようです。

とりあえず試してからここに追記します。

【追記 2008-6-20】

■インストール方法:
  1. Admin SSL』をダウンロードして解凍し、FTPで/wp-content/plugins/フォルダにアップロード。
  2. admin>プラグインにて「Admin SSL」の「使用する」をクリック。
  3. 同じ画面の上部サブメニュー「Admin SSL」をクリック。
  4. 下記設定画面があらわれる。
    admin-ssl.png
  5. 「Secure my site with SSL」(サイトをSSLでセキュア化)にチェック。
  6. 独自SSL(Private SSL)の場合はページ下部「変更を保存」で設定終了。
  7. 共有SSL(Shared SSL)の場合は「Use Shared SSL」にチェックを入れ、「Shared SSL URL」にサーバ側から提供される共有SSLのURLにWPのadminまでのパスを繋げたアドレスを入力。必ず最後は/wp-admin/で終わるように。
  8. ページ下部「変更を保存」で設定終了。
  9. 他のページへ移動するとすぐにSSL化が有効になる。
    ※初期状態ではログイン画面とプロフィール画面のみSSL化される。
■追加設定:

  1. 管理画面全体をSSLでセキュア化するには:
    上記設定画面の「URL List」にあるwp-comments-post.phpのあとに改行してwp-admin/を追加する。SSL化するページorディレクトリを1行ごと入力。
  2. 「Secure additional URLs only if user is signed in」というのは多分コメントフォームをSSL化するのは登録済みユーザーがログインした状態でのみ、という設定だと思います。 「URL List」のページをSSL化するのは登録済みユーザーがログインした状態でのみ、ということだと思います。
  3. 「Config Page」はAdmin SSLの設定画面を「プラグイン」と「設定」どちらのページに表示するか、の設定。

■使用してみてレポート:

WordPress 2.5にて共有SSLでテストしていますが、問題なく稼働しています…と言いたいところですが、1つ問題点が。

admin丸ごとSSL化すると、投稿画面にて画像の挿入ができません。画像のアップロードやオプション設定まではできるのですが、投稿画面への挿入を行うと、サブウィンドウが真っ白になってしまいます。その他、特殊記号など挿入が必要なWYSIWYGボタンは同様にサブウィンドウが真っ白になって操作できません。moreタグボタンは機能します。

これは、「設定」>「WordPressのアドレス」にも共有SSLでのWordPressのURLを設定すると解決します。しかしそのことによる弊害が他の部分で出る可能性もあります。

多分、WYSIWYGエディタのボタン類のファンクションが上記「WordPressのアドレス」の値=get_bloginfo('wpurl')を参照していて、そのURLが今表示している共有SSLのURLとドメインが違うからエラー起こしているんだと思います。Ajax、XML関連かな?

---
get_bloginfo()をハックしてhttps通信中だったら共有SSLの値(Admin SSLに設定した値を持ってくるか、あらかじめwp-config.phpあたりに共有SSLのURLをdefineしておくとか)、それ以外はSSLでないURL、と振り分けるようにすればうまくいくのかも。
---

【追記】こちらのサイトにそれらしきことに触れられています↓

SSL for WordPress Admin and the Problem with XMLHttpRequest (2008/3/20) Disruptive Library Technology Jester

いちばん簡単なのは、投稿画面(作成画面)だけはSSL化しないように、adminのその他のページをせっせと「URL List」に放り込む方法でしょうか。

■まとめ:
WordPressをポータルサイトなど会員制サイトに応用する場合、登録ユーザーの個人情報やアンケート結果などをWPの管理画面上で取り扱うこともあるかと思います。その場合SSLで暗号化されてるのは安心ですね。

以前は、サーバーのSSLディレクトリにもWordPressをもう1セット置いて、非SSL側(おもて側)のWordPressと同じデータベースを参照させることで管理画面を強引にSSL化していましたが、そうすると管理画面から投稿した画像はSSL側のディレクトリに保存されてしまい、非SSL側(おもて側)への画像のアクセスを.htaccessでSSL側へリダイレクトしたり、とかなり無理をやりました。。。

このプラグインを使えばそんなことしなくても簡単にSSL化できて便利です。感謝!

↑ PageTop

この記事へのコメント
こんばんは、質問させてください。

Admin SSL Configurationで設定して
変更を保存ボタンを押すと
「本当に実行していいですか ?」のメッセージのみで
はい、いいえのボタンが出てこないのですが
何か設定が必要でしょうか?
WordPress2.5.1日本語版で実行しています。
WordPress2.3などで試したところでは
はい、いいえのボタンが出てきたのですが・・・。

よろしくお願いします。
Posted by チョッパー at 2008年07月25日 23:42
レスが遅くなってしまいごめんなさい;
すでに解決済みでしょうか。。

えっと、
「本当に実行していいですか ?」
というメッセージは私の環境(Mac + Safari)では表示されません。

「変更を保存」ボタンをクリックで即座に「設定を保存しました。」のメッセージがページ上部に黄色い枠で囲まれて表示されます。

ブラウザを変えてみるとどうでしょうか?
Posted by みやざわ at 2008年08月01日 22:15
お返事ありがとうございます。

Windows IE7とSafari(Windows版)で試してみたところ、確認メッセージは出ずに
下記のようなエラーが出ました。

Warning: Cannot modify header information - headers already sent by (output started at
***\wp-admin\admin-header.php:26) in ***\wp-content\plugins\admin-ssl-secure-admin\admin-ssl.php on line 177

インストールしたばかりのWordPress2.5.1日本語版でも同じ症状が出てしまいました。
Macだと問題ないのですね。
Posted by チョッパー at 2008年08月03日 12:11
コメントを書く
name

mail

url

comment

認証コード: *


※画像の中の文字を半角で入力してください。

この記事へのトラックバック

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は1年以上新しい記事の投稿がないブログに表示されております。