basic認証をGETパラメータでスキップするサービス作った

Program & Service

概要

  • GETパラメータでbasic認証の情報を渡すと、basic認証が使えないhttpクライアントでもbasic認証を通過出来るようにするサービス。
  • 2年前に作ったのですが、blogとして記事を書いていませんでした。
  • OSSです。
GitHub - matsubo/http-basic-auth-proxy: HTTP/HTTPS basic auth bypass proxy
HTTP/HTTPS basic auth bypass proxy. Contribute to matsubo/http-basic-auth-proxy development by creating an account on Gi...

いきさつ(ユースケース)

  • とあるグループウェアがbasic認証付きでicalのfeedが吐かれる。
  • google calendarで上記のbasic認証がかかったicalを直接取得出来ない。
    • Google calendarが http://user:password@host/ical というURLスキームに対応していない
  • basic認証を何らかの方法で突破しなければいけない。
  • ハードコードするようなリバースプロクシを書いても良いけど、同じように困っている人が居るはずなのでサービスとして作ろう。

使い方

  • basic認証のかかっているURLが以下とすると
    • http://example.com/
    • ID: username
    • PW: passw0rd
  • 以下のURLでbasic認証を回避出来る
    • https://http-basic-auth-proxy.herokuapp.com/proxy.php?http_basic_user=username&http_basic_password=passw0rd&http_host_path=example.com/&additional=parameters&

こだわりの点

  • basic認証情報をGETパラメータに載せることになるのでセキュリティが気になります。第三者のサービスに渡すのが嫌な場合は自前のherokuに立てられるようにOSSです。
  • herokuでボタン1発で自前のherokuアカウントにデプロイできます。

コメント