-
-
-
-
-
APIプロキシサーバーとしてのNetScaler Console
This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
APIプロキシサーバーとしてのNetScaler Console
NetScaler Application Delivery Management (NetScaler Console)は、自身の管理および分析機能のためにNITRO REST APIリクエストを受信するだけでなく、管理対象インスタンスのREST APIプロキシサーバーとしても機能できます。REST APIクライアントは、APIリクエストを管理対象インスタンスに直接送信する代わりに、NetScaler Consoleに送信できます。NetScaler Consoleは、自身が応答する必要があるAPIリクエストと、変更せずに管理対象インスタンスに転送する必要があるAPIリクエストを区別できます。
APIプロキシサーバーとして、NetScaler Consoleは以下の利点を提供します。
-
APIリクエストの検証。NetScaler Consoleは、設定されたセキュリティおよびロールベースのアクセス制御 (RBAC) ポリシーに対してすべてのAPIリクエストを検証します。NetScaler Consoleはテナントを認識し、APIアクティビティがテナントの境界を越えないようにします。
-
一元的な監査。NetScaler Consoleは、管理対象インスタンスに関連するすべてのAPIアクティビティの監査ログを保持します。
-
セッション管理。NetScaler Consoleは、APIクライアントが管理対象インスタンスとのセッションを維持する必要があるというタスクから解放します。
APIプロキシサーバーとしてのNetScaler Consoleの動作
NetScaler Consoleにリクエストを管理対象インスタンスに転送させたい場合は、APIクライアントを設定して、APIリクエストに以下のいずれかのHTTPヘッダーを含めます。
| ヘッダー値 | 説明 |
|---|---|
| _MPS_API_PROXY_MANAGED_INSTANCE_NAME | 管理対象インスタンスの名前 |
| _MPS_API_PROXY_MANAGED_INSTANCE_IP | 管理対象インスタンスのIPアドレス |
| _MPS_API_PROXY_MANAGED_INSTANCE_ID | 管理対象インスタンスのID |
| _MPS_API_PROXY_TIMEOUT | NITRO APIリクエストのタイムアウト値。タイムアウト値を秒単位で設定します。プロキシタイムアウトを設定すると、NetScaler Consoleは指定された期間待機してからリクエストをタイムアウトします |
| _MPS_API_PROXY_MANAGED_INSTANCE_USERNAME | 管理対象NetScalerインスタンスにアクセスするためのユーザー名 |
| _MPS_API_PROXY_MANAGED_INSTANCE_PASSWORD | 管理対象NetScalerインスタンスにアクセスするためのパスワード |
| _MPS_API_PROXY_MANAGED_INSTANCE_SESSID | 管理対象インスタンスにアクセスするためのセッションID |
注
設定 > 管理 > システム構成 > 基本設定で、インスタンスログインの資格情報のプロンプトを選択した場合、管理対象インスタンスのユーザー名とパスワードを設定してください。または、インスタンスセッションIDを指定することもできます。
これらのHTTPヘッダーのいずれかが存在することで、NetScaler ConsoleはAPIリクエストを管理対象インスタンスに転送する必要があるものとして識別できます。ヘッダーの値は、NetScaler Consoleがリクエストを転送する必要がある管理対象インスタンスを識別するのに役立ちます。
このフローを次の図に示します。

上の図に示すように、これらのHTTPヘッダーのいずれかがリクエストに表示されると、NetScaler Consoleはリクエストを次のように処理します。
-
リクエストを変更せずに、NetScaler ConsoleはリクエストをインスタンスAPIプロキシエンジンに転送します。
-
インスタンスAPIプロキシエンジンはAPIリクエストをバリデーターに転送し、APIリクエストの詳細を監査ログに記録します。
-
バリデーターは、リクエストが設定されたセキュリティポリシー、RBACポリシー、テナンシー境界などに違反しないことを保証します。また、管理対象インスタンスが利用可能かどうかを判断するチェックなど、追加のチェックを実行します。
APIリクエストが有効で、管理対象インスタンスに転送できる場合、NetScaler Consoleはインスタンスセッションマネージャーによって維持されているセッションを識別し、リクエストを管理対象インスタンスに送信します。
注
インスタンスログインの資格情報のプロンプトオプションが無効になっていることを確認してください。そのためには、次の手順を実行します。
- 設定 > 管理に移動します。
- システム構成で、システム、タイムゾーン、許可されたURL、および今日のメッセージを選択します。
APIプロキシサーバーとしてのNetScaler Consoleの使用方法
以下の例は、IPアドレス192.0.2.5を持つNetScaler ConsoleサーバーにAPIクライアントが送信するREST APIリクエストを示しています。NetScaler Consoleは、リクエストをIPアドレス192.0.2.10を持つ管理対象インスタンスに、変更せずに転送する必要があります。すべての例で_MPS_API_PROXY_MANAGED_INSTANCE_IPヘッダーを使用します。
NetScaler ConsoleにAPIリクエストを送信する前に、APIクライアントは次のことを行う必要があります。
- NetScaler Consoleにログインする
- セッションIDを取得する
- 後続のAPIリクエストにセッションIDを含める
ログオンAPIリクエストは次の形式です。
POST /nitro/v1/config/login
Content-Type: application/json
{
"login": {
"username":"nsroot",
"password":"nsroot"
}
}
<!--NeedCopy-->
NetScaler Consoleは、セッションIDを含む応答でログオンリクエストに応答します。以下のサンプル応答ボディはセッションIDを示しています。
{
"errorcode": 0,
"message": "Done",
"operation": "add",
"resourceType": "login",
"username": "***********",
"tenant_name": "Owner",
"resourceName": "nsroot",
"login": [
{
"tenant_name": "Owner",
"permission": "superuser",
"session_timeout": "36000",
"challenge_token": "",
"username": "",
"login_type": "",
"challenge": "",
"client_ip": "",
"client_port": "-1",
"cert_verified": "false",
"sessionid": "##D2BF9C5F40E5B2E884A9C45C89F0ADE24DA8A8169BE6358D39F5D471B73D",
"token": "b2f3f935e93db6a"
}
]
}
<!--NeedCopy-->
例1: 負荷分散仮想サーバー統計の取得
クライアントはNetScaler Consoleに次の形式のAPIリクエストを送信する必要があります。
GET /nitro/v1/stat/lbvserver
Content-type: application/json
_MPS_API_PROXY_MANAGED_INSTANCE_IP: 192.0.2.10
SESSID: ##D2BF9C5F40E5B2E884A9C45C89F0ADE24DA8A8169BE6358D39F5D471B73D
<!--NeedCopy-->
ここで、Cookieヘッダーの値はログインAPI呼び出しから返されたセッションIDです。また、_MPS_API_PROXY_MANAGED_INSTANCE_IPの値はNetScalerのIPアドレスです。
例2: 負荷分散仮想サーバーの作成
クライアントはNetScaler Consoleに次の形式のAPIリクエストを送信する必要があります。
POST /nitro/v1/config/lbvserver/sample_lbvserver
Content-type: application/json
Accept-type: application/json
_MPS_API_PROXY_MANAGED_INSTANCE_IP: 192.0.2.10
SESSID: ##D2BF9C5F40E5B2E884A9C45C89F0ADE24DA8A8169BE6358D39F5D471B73D
{
"lbvserver":{
"name":"sample_lbvserver",
"servicetype":"HTTP",
"ipv46":"10.102.1.11",
"port":"80"
}
}
<!--NeedCopy-->
例3: 負荷分散仮想サーバーの変更
クライアントはNetScaler Consoleに次の形式のAPIリクエストを送信する必要があります。
PUT /nitro/v1/config/lbvserver
Content-type: application/json
Accept-type: application/json
_MPS_API_PROXY_MANAGED_INSTANCE_IP: 192.0.2.10
SESSID: ##D2BF9C5F40E5B2E884A9C45C89F0ADE24DA8A8169BE6358D39F5D471B73D
{
"lbvserver":{
"name":"sample_lbvserver",
"appflowlog":"DISABLED"
}
}
<!--NeedCopy-->
例4: 負荷分散仮想サーバーの削除
クライアントはNetScaler Consoleに次の形式のAPIリクエストを送信する必要があります。
DELETE /nitro/v1/config/lbvserver/sample_lbvserver
Accept-type: application/json
_MPS_API_PROXY_MANAGED_INSTANCE_IP: 192.0.2.10
SESSID: ##D2BF9C5F40E5B2E884A9C45C89F0ADE24DA8A8169BE6358D39F5D471B73D
<!--NeedCopy-->
例5: NetScaler上のCLI実行構成のダウンロード
クライアントはNetScaler Consoleに次の形式のAPIリクエストを送信する必要があります。
GET /nitro/v1/config/nsrunningconfig
Accept-type: application/json
_MPS_API_PROXY_MANAGED_INSTANCE_IP: 192.0.2.10
SESSID: ##D2BF9C5F40E5B2E884A9C45C89F0ADE24DA8A8169BE6358D39F5D471B73D
<!--NeedCopy-->
共有
共有
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.