# APIを保護

利用対象...

* Cloud API Services Platform
* Cloud Big Data
* Cloud Big Data Platform
* Cloud Data Fabric
* Cloud Data Integration
* Cloud Data Management Platform
* Cloud Pipeline Designer Standard Edition
* Data Fabric

コンシューマーの認証情報を作成して、HTTPSを設定すると、APIを保護します。

## コンシューマーを管理

基本認証またはAPIキー認証を使うと、データセットから生成されたAPIにアクセスできます。許可されたコンシューマーを追加する時に、API設定フォームで認証方式を選択します。

* 基本認証の場合は、コンシューマーのユーザー名とパスワードを定義します。

  APIを呼び出すには、[Authorization] (認証)ヘッダーを追加する必要があります。値は、Base64でエンコードされたusername:passwordという文字列に後続されるBasicである必要があります。たとえば: Basic dXNlcm5hbWU6cGFzc3dvcmQ=。

* APIキー認証の場合は、リクエストのヘッダーで生成されたキーを使います。

  APIを呼び出すには、[Authorization] (認証)ヘッダーを追加する必要があります。値は、API設定中に生成されるAPIキーに後続されるTokenである必要があります。たとえば: Token apic.data-api\_3KF0MT\_EalJeneqZZC3BVTm9J3ft6s66vAb3g\_EgI0K7。

## HTTPSを使用

Remote Engine Gen2接続でデータセットをお使いの場合は、APIのHTTPSを設定できます。この操作は、Remote Engine Gen2ディレクトリーにあるdefault/nginxフォルダーでNGINX設定をアップデートして行います。

情報メモ重要: HTTPS設定に切り替えると、HTTPで使われるサーバーポートは8080ではなく8443となります。

基本HTTPS設定が構成しやすくなるよう、default/nginx/nginx.confファイルにはコメント月の設定例が含まれています。

1. 次の行をコメントします。

   ```
    listen              9102; # Do not change this port number
   ```

2. 次の行をコメント解除します。

   ```
   # listen              9103 ssl;  # Do not change this port number
       # ssl_certificate     cn.crt;    # The name of your public certificate file. Put it next to this nginx.conf
       # ssl_certificate_key cn.key;    # The name of your private key file. Put it next to this nginx.conf
   ```

   .crtファイルと.keyファイルはdefault/nginxフォルダーに配置する必要があります。

3. .crtファイルと.keyファイル用のdefault/nginx/nginx.confが実際のファイル名に対応していることを確認してください。

これを設定するにはさまざまな方法があります。詳細設定については、[NGINXドキュメンテーション](http://nginx.org/en/docs/http/configuring_https_servers.html)をご覧ください。

情報メモヒント: NGINXでは、Let's Encryptからの無料SSL証明書を使えます。詳細は、[NGINXブログ](https://www.nginx.com/blog/using-free-ssltls-certificates-from-lets-encrypt-with-nginx/)をご覧ください。