Azure API Management のリビジョン
適用対象: すべての API Management レベル
リビジョンを使用すると、制御された安全な方法で、API に変更を加えることができます。 変更を加える場合は、新しいリビジョンを作成します。 そうすれば、API のコンシューマーに影響を及ぼすことなく、API を編集してテストすることができます。 準備ができたら、そのリビジョンを現在のリビジョンにします。 それと同時に、必要に応じて変更ログにエントリを投稿しておくことで、API のコンシューマーが最新の変更内容を把握し続けることができます。 変更ログは、お使いの開発者ポータルに発行されます。
Note
開発者ポータルは、従量課金レベルではご利用いただけません。
リビジョンにより、次のことができます。
- 実稼働 API に影響を及ぼすことなく、API の定義とポリシーを安全に変更する。
- 変更内容を発行する前に試す。
- 開発者が最新の内容を把握できるように、行った変更を文書化する。
- 問題が見つかった場合にロールバックする。
このチュートリアルに従って、リビジョンの使用を開始してください。
特定のリビジョンにアクセスする
API の各リビジョンには、特別な形式の URL を使用してアクセスできます。 クエリ文字列の前ではなく、対象の API の URL の末尾に ;rev={revisionNumber}
を追加することで、その API の特定のリビジョンにアクセスします。 たとえば、次の URL を使用すると、customers
API のリビジョン 3 にアクセスできます。
https://apis.contoso.com/customers;rev=3/leads?customerId=123
既定では、各リビジョンのセキュリティ設定は現在のリビジョンのものと同じです。 リビジョンごとに異なるセキュリティを適用したい場合、特定のリビジョンのポリシーを意図的に変更することができます。 たとえば、IP フィルタリング ポリシーを追加して、外部の呼び出し元による開発中のリビジョンへのアクセスを防ぐことができます。
Note
;rev={id}
は、URI パスではなく API ID に追加する必要があります。
現在のリビジョン
特定のリビジョンを "現在の" リビジョンとして設定できます。 このリビジョンは、URL に明示的なリビジョン番号が指定されていないすべての API 要求で使用されます。 以前のリビジョンを現在のものとして設定することで、そのリビジョンにロールバックできます。
Azure portal を使用して、リビジョンを現在のリビジョンとして設定できます。 PowerShell を使用する場合は、New-AzApiManagementApiRelease
コマンドレットを使用できます。
リビジョンの説明
リビジョンを作成するときに、独自の追跡の目的で、説明を設定できます。 説明が API ユーザーに表示されることはありません。
リビジョンを現在のリビジョンとして設定する際に、必要に応じて、パブリックな変更ログのメモを指定することもできます。 変更ログは、API ユーザーが確認できるように、開発者ポータルに含まれています。 Update-AzApiManagementApiRelease
PowerShell コマンドレットを使用して、変更ログのメモを変更できます。
注意事項
API の現在以外のリビジョンを編集している場合、次のプロパティを変更することはできません。
- 名前
- 種類
- 説明
- サブスクリプションは必須です
- API バージョン
- API バージョンの説明
- パス
- プロトコル
これらのプロパティは、現在のリビジョンでのみ変更できます。 編集を行ったことで、現在以外のリビジョンの上記のプロパティが変更された場合は、エラー メッセージ Can't change property for non-current revision
が表示されます。
リビジョンをオフラインにする
リビジョンはオフラインにすることができます。これにより、呼び出し元は、URL を介してリビジョンにアクセスしようとしてもできなくなります。 Azure portal を使用して、リビジョンをオフラインとしてマークできます。
Note
リビジョンをオフラインにするのは、それらをテストに使用していないときをお勧めします。
バージョンとリビジョン
バージョンとリビジョンは別個の機能です。 各バージョンは、バージョン管理されていない API と同じように、複数のリビジョンを持つことができます。 リビジョンは、バージョンを使用せずに使用することも、その他の方法で使用することもできます。 通常、バージョンは、破壊的変更のある API のバージョンを区別するために使用される一方、リビジョンは、API に軽微な変更および非破壊的変更を加えるために使用されます。
リビジョンに破壊的変更があることが判明した場合、またはリビジョンを正式にベータ バージョンまたはテスト バージョンに変更する場合は、リビジョンからバージョンを作成することができます。 Azure portal を使用して、[リビジョン] タブのリビジョン コンテキスト メニューで [Create Version from Revision](リビジョンからバージョンを作成) をクリックします。