SSL Certificates
================

``config.yml`` に\ ``enable_pg_backup_api: true``
を設定するか、構成中に\ ``--enable-pg-backup-api``
コマンドラインオプションを使用した場合、 ``barman``
ロールを持つインスタンスはpg-backup-apiをインストールし、クライアント証明書認証用のApacheプロキシをセットアップします。このApacheプロキシは、クラスター用に生成されたSSL
CAを使用して、サーバーとクライアントの証明書を生成します。

.. code:: yaml

   cluster_vars:
     enable_pg_backup_api: true

pg-backup-apiは、デフォルトでパッケージを介してインストールされますが、gitブランチまたはローカルディレクトリからインストールすることもできます。詳細については、
 :ref:`configure-source.md <Building from source>` および :ref:`install_from_source.md <Installing from source>` を参照してください。

pg-backup-apiを実行しているbarmanノードで\ ``pg-backup-api status``
を実行します-「OK」が返ってきたら、
pg-backup-apiサービスが実行されています。

プロキシが機能していることをテストするには、実行します

.. code:: shell

   curl --cert /etc/tpa/pg-backup-api/pg-backup-user.crt \
        --key /etc/tpa/pg-backup-api/pg-backup-user.key \
        -X GET https://{hostname}/diagnose

動作している場合、大きなjson出力が得られます。これを\ ``barman diagnose``
の出力と比較できます。正確に一致するはずです。

ルート証明書は、デフォルトで\ ``/etc/tpa/pg-backup-api/``
にコピーされます。

テスト（\ ``tpaexec test``
を介して）またはバーマンホストからのコマンドラインのために、クライアント証明書とキー（\ ``pg-backup-user.crt``
および\ ``pg-backup-user.key`` ）が生成されます。
 :ref:`テスト <テスト>` を参照してください。

Apacheプロキシサーバーの証明書とキー（\ ``pg-backup-api.crt``
および\ ``pg-backup-api.key`` ）も生成されます

APIを照会する必要がある各サービスは、独自のクライアント証明書を個別に生成する必要があります。たとえば、PEMエージェントロールは、
``--enable-pem`` と\ ``--enable-pg-backup-api``
（またはconfig.yml同等）の両方が使用される場合、セットアップ中にクライアント証明書を生成します。
