Azure Webサイト上のWordPressやphpMyAdminなどのPHPアプリケーションでも、基本認証やダイジェスト認証をかけたいときは、nabehiroさんがGitHubで公開しているモジュールを使うと簡単です。

HttpAuthModule
https://github.com/nabehiro/HttpAuthModule

試してみましょう。設定ファイルを適当に修正してファイルを2つコピーするだけです。

1.FTPSなどでアクセスして、wwwrootの下にbinフォルダ作成、その中にHttpAuthModule.dllを入れる。

2.HttpAuthModuleの設定を記載したWeb.Configをwwwrootの直下に入れる。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <appSettings>
    <add key="HttpAuth" value="Digest" />
    <add key="HttpAuth.Realm" value="" />
    <add key="HttpAuth.Credentials" value="hoge:hogepass1;foo:foopass1;" />
    <add key="HttpAuth.DigestNonceValidDuration" value="120" />
    <add key="HttpAuth.DigestNonceSalt" value="uht9987bbbSAX" />
  </appSettings>

  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true">
      <add type="HttpAuthModule.HttpAuthModule" name="HttpAuthModule" />
    </modules>
  </system.webServer>
</configuration>

 

「wp-admin」以下のみ制限をかける場合やIPアドレスによる制限を追加する場合は、appSettingsに下記のような設定を追加するだけです。

    <add key="HttpAuth.IgnorePathRegex" value="^(?!/wp-admin)" />
    <add key="HttpAuth.RestrictIPAddresses" value="127.0.0.1" />

 

できました。

20131018-001s

 

お試しにv2.0.2をビルドしたもの&上記の設定ファイルは、ここに置いておきます。

Tagged with:
 

Comments are closed.