第3章 API 呼び出しの認証
Satellite API との対話には、Satellite Server の CA 証明書で SSL 認証するか、有効な Satellite ユーザー認証情報で認証する必要があります。本章では、使用可能な認証方法について説明します。
3.1. SSL 認証の概要 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Satellite は HTTPS を使用して、Red Hat Satellite Server との通信時に、一定の暗号化およびアイデンティティーの検証を行います。Satellite 6.9 では、SSL 以外の通信はサポートしません。
Red Hat Satellite Server はそれぞれ、自己署名証明書を使用します。この証明書は、暗号化キーを検証するサーバー証明書および Satellite Server のアイデンティティーを信頼する証明局のロールを果たします。
3.1.1. SSL 認証の設定 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して、Satellite Server に対する API 要求の SSL 認証を設定します。
手順
以下のオプションのいずれかを使用して、通信に使用する Satellite Server から証明書を取得します。
リモートサーバーからコマンドを実行する場合は、SSH を使用して証明書を取得します。
scp root@satellite.example.com:/var/www/html/pub/katello-server-ca.crt ./
$ scp root@satellite.example.com:/var/www/html/pub/katello-server-ca.crt ./Copy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server で直接コマンドを実行する場合は、証明書を現在のディレクトリーにコピーします。
cp /var/www/html/pub/katello-server-ca.crt ./
$ cp /var/www/html/pub/katello-server-ca.crt ./Copy to Clipboard Copied! Toggle word wrap Toggle overflow
--cacert katello-server-ca.crtオプションを指定した API 要求を使用し、Satellite Server のアイデンティティーを検証します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Network Security Services (NSS) データベースを作成して
katello-server-ca.crt証明書を保存します。certutil -N -d sql:$HOME/.pki/nssdb
$ certutil -N -d sql:$HOME/.pki/nssdbCopy to Clipboard Copied! Toggle word wrap Toggle overflow NSS データベースに永続的に証明書を追加します。
certutil -d sql:$HOME/.pki/nssdb -A -t TC -n "Red Hat Satellite" \ -i katello-server-ca.crt
$ certutil -d sql:$HOME/.pki/nssdb -A -t TC -n "Red Hat Satellite" \ -i katello-server-ca.crtCopy to Clipboard Copied! Toggle word wrap Toggle overflow --cacertオプションを指定せずに API 要求を入力して、証明書が NSS データベースに存在することを確認します。curl --request GET \ --user sat_username:sat_password \ https://satellite.example.com/api/v2/hosts
$ curl --request GET \ --user sat_username:sat_password \ https://satellite.example.com/api/v2/hostsCopy to Clipboard Copied! Toggle word wrap Toggle overflow