Rest api - Redmine を参考にし、curl + 4 通りの方法で Redmine の API 認証を通してみた。(利用したバージョンは 3.3.0-1)
前提
下記の環境変数を設定した前提。
HOST=(あなたの Redmine ホスト名)
USERNAME=(あなたの Redmine ユーザー名)
PASSWORD=(あなたの Redmine パスワード)
KEY=(あなたの Redmine API キー)
BASIC 認証を利用する場合
$ curl https://$USERNAME:$PASSWORD@$HOST/issues/12345.json; echo
API キーを利用する場合 (クエリーパラメーター)
$ curl https://$HOST/issues/12345.json?key=$KEY; echo
API キーを利用する場合 (HTTP ヘッダー)
$ curl -H "X-Redmine-API-Key: $KEY" https://$HOST/issues/12345.json; echo
API キーを利用する場合 (BASIC 認証)
ユーザー名に API キーを指定し、パスワードは適当でいいっぽい。
$ curl https://$KEY:hogehoge@$HOST/issues/12345.json; echo
まとめ
比較的新しいバージョンの Redmine で、ドキュメントに掲載されているどのやり方でも API 認証ができることが確認できた。
どれもそこまでセキュアではないけど、HTTP ヘッダーを利用するのが一番マシなんじゃないかと思う。