HTTP Basic Auth Encoder
HTTPベーシック認証認証情報をエンコードおよびデコードします。ユーザー名とパスワードからAuthorizationヘッダー値を生成します。
このツールについて
HTTP Basic Auth Encoderは、Authorization: Basicヘッダーの値を生成し、また読み取ります。この値は、コロンで結合したユーザー名とパスワード(username:password)を単純にbase64エンコードしたものです。HTTP APIを扱う際に、このヘッダーを手作業で組み立てたりデコードしたりする日常的な手間を解消します。
エンコードするにはユーザー名とパスワードを入力すると、すぐに使えるヘッダー値が得られます。デコードするには既存のBasicヘッダーを貼り付ければ、元の資格情報に分解されます。APIのテスト、curlやPostmanのリクエスト作成、実際に送信された内容を確認したい401 Unauthorizedレスポンスのデバッグに便利です。
Basic認証のbase64は暗号化ではなく単なるエンコードである点に注意してください。傍受されれば誰でも資格情報を読み取れます。そのため必ずHTTPS上で使用してください。すべての処理はブラウザ内でローカルに実行され、入力した内容がどこかに送信されることは一切ありません。
よくある質問
コード実装
import base64
def encode_basic_auth(username: str, password: str) -> str:
credentials = f"{username}:{password}"
encoded = base64.b64encode(credentials.encode("utf-8")).decode("utf-8")
return f"Basic {encoded}"
def decode_basic_auth(header_value: str) -> tuple[str, str]:
b64 = header_value.removeprefix("Basic ").strip()
decoded = base64.b64decode(b64).decode("utf-8")
username, _, password = decoded.partition(":")
return username, password
header = encode_basic_auth("admin", "secret")
print(header) # Basic YWRtaW46c2VjcmV0
user, pwd = decode_basic_auth(header)
print(f"Username: {user}, Password: {pwd}")Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.