第4章 API 呼び出しの認証
Satellite API との対話には、Satellite Server の CA 証明書で SSL 認証するか、有効な Satellite ユーザー認証情報で認証する必要があります。以下の認証方法を使用できます。
4.1. SSL 認証の概要
Red Hat Satellite は HTTPS を使用して、Satellite Server との通信時に、一定の暗号化およびアイデンティティーの検証を行います。Satellite 6.16 では、SSL 以外の通信はサポートしません。
デフォルトでは、Satellite Server は自己署名証明書を使用します。この証明書は、暗号化キーを検証するサーバー証明書および Satellite Server のアイデンティティーを信頼する証明局のロールを果たします。
カスタム SSL 証明書を使用するように Satellite Server を設定できます。詳細は、オンラインネットワーク環境からの Satellite Server のインストール の カスタムの SSL 証明書を使用した Satellite Server の設定 を参照してください。非接続の Satellite Server の詳細は、オフラインネットワーク環境での Satellite Server のインストール の カスタム SSL 証明書を使用した Satellite Server の設定 を参照してください。
4.1.1. SSL 認証の設定
Satellite Server への API 要求の SSL 認証を設定します。
手順
次のいずれかのオプションを使用して、Satellite Server から証明書を取得します。
リモートサーバーから API を呼び出す予定の場合は、CA 証明書をダウンロードします。
# curl -o /etc/pki/ca-trust/source/anchors/satellite.example.com-katello-server-ca.crt \ http://satellite.example.com/pub/katello-server-ca.crt
Satellite Server で API を直接呼び出す予定の場合は、証明書を
/etc/pki/ca-trust/source/anchors
ディレクトリーにコピーします。# cp /var/www/html/pub/katello-server-ca.crt \ /etc/pki/ca-trust/source/anchors/satellite.example.com-katello-server-ca.crt
信頼できる CA のリストに証明書を追加します。
$ update-ca-trust extract
検証
--cacert
オプションなしで API 要求を入力して、クライアントが Satellite SSL 証明書を信頼していることを確認します。$ curl --request GET \ --user My_User_Name:My_Password \ https://satellite.example.com/api/v2/hosts