基本認証を使用したHTTPリクエストの送信

PowerShell:
基本認証を使用したHTTPリクエストの送信

How to: (やり方)

# ユーザ名とパスワードを設定
$user = 'your_username'
$pass = 'your_password'

# Basic認証のためのエンコード済みの資格情報を作成
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $user, $pass)))

# HTTPヘッダに認証情報を追加
$headers = @{
    Authorization=("Basic {0}" -f $base64AuthInfo)
}

# HTTP GETリクエストを実行し、結果を表示
$response = Invoke-RestMethod -Uri 'https://api.example.com/data' -Method Get -Headers $headers
$response

実行結果のサンプル:

# 例: JSON形式のデータが返される
{
    "data": "ここには取得したデータが表示されます"
}

Deep Dive (詳細解説)

歴史的背景: 基本認証はHTTP/1.0からある古い方法。古くても、内部ツールなどセキュリティ要件が緩い場面で使われる。

代替手段: もっと安全?OAuthやトークン認証が今は主流。でも、シンプルが一番な時もある。

実装詳細: Basic認証ではAuthorizationヘッダにBasicの後にBase64でエンコードされたusername:passwordを追加します。ただし、HTTPSを使わないと、情報が漏れる可能性があるので要注意。

See Also (関連情報)