適用対象: すべての API Management レベル
API Management の論理的な削除を使用すると、最近削除された API Management インスタンスを復旧および復元できます。 この機能により、API Management インスタンスが誤って削除されるのを防ぐことができます。
インターフェイスのサポート
論理的に削除されたインスタンスに対するその他の操作は、 REST API バージョン 2020-06-01-preview 以降、 Azure CLI、または Azure SDK for .NET、Go、または Python を使用して実行できます。
ヒント
- Azure REST API を呼び出すためのヒントとツールの詳細については、「 Azure REST API リファレンス」を参照してください。 API Management に固有の情報については、 API Management REST を参照してください。
- Azure CLI を使用するには、Azure CLI をまだインストールしていない場合のインストールに関するページを参照してください。
| Operation | Description | API Management 名前空間 | 最小 API バージョン |
|---|---|---|---|
| 作成または更新 | API Management サービスを作成または更新します。 | API Management サービス | [任意] |
プロパティを restore に設定して作成または更新する |
API Management サービスが以前に論理的に削除されている場合に、それを回復します。
restoreが指定され、trueに設定されている場合、その他のすべてのプロパティは無視されます。 |
API Management サービス | 2020-06-01-preview |
| 削除 | 既存の API Management サービスを削除します。 | API Management サービス | 2020-06-01-preview |
| 名前で取得 | 論理的に削除された API Management サービスを、名前を指定して取得します。 | 削除されたサービス | 2020-06-01-preview |
| サブスクリプション別に一覧表示する | 指定されたサブスクリプションについて削除の取り消しが可能な、論理的に削除されたサービスを一覧表示します。 | 削除されたサービス | 2020-06-01-preview |
| 粛清 | API Management サービスを消去します (削除を取り消すオプションなしで完全に削除されます)。 | 削除されたサービス | 2020-06-01-preview |
論理的な削除の動作
任意の API バージョンを使用して、API Management インスタンスを作成できます。 API バージョンが 2020-06-01-preview 以降の Azure portal、Azure REST API、または別の Azure ツールを使用して API Management インスタンスを削除すると、インスタンスは自動的に論理的に削除されます。
API Management インスタンスを論理的に削除すると、サービスは削除された状態になり、通常の API Management 操作にアクセスできなくなります。
論理的に削除された状態の場合:
- API Management インスタンスの 一覧表示、 回復、または 消去 (完全削除) のみが可能です。
- Azure では、事前に定義された 48 時間のリテンション期間の後に、API Management インスタンスの基になるデータの完全な削除がスケジュールされます。
- API Management インスタンスの名前を再利用することはできません。
48 時間以内に API Management インスタンスを復旧または消去しない場合、インスタンスは完全に削除されます。
削除された API Management インスタンスを一覧表示する
論理的に削除された API Management インスタンスが復元可能であることを確認するには、Deleted Services Get By Name 操作または List By Subscription 操作を使用します。
論理的に削除されたインスタンスを名前を指定して取得する
API Management Get By Name 操作を使用します。 {subscriptionId}、 {location}、 {serviceName} は、Azure サブスクリプション、 リソースの場所名、および API Management インスタンス名に置き換えます。
GET https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.ApiManagement/locations/{location}/deletedservices/{serviceName}?api-version=2024-05-01
API Management インスタンスを削除解除できる場合、Azure はインスタンスのレコードを返し、その deletionDate と scheduledPurgeDateを示します。 たとえば、REST API は次のような出力を返します。
{
"id": "subscriptions/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f/providers/Microsoft.ApiManagement/locations/southcentralus/deletedservices/apimtest",
"name": "apimtest",
"type": "Microsoft.ApiManagement/deletedservices",
"location": "South Central US",
"properties": {
"serviceId": "/subscriptions/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f/resourceGroups/apimtestgroup/providers/Microsoft.ApiManagement/service/apimtest",
"scheduledPurgeDate": "2024-11-26T19:40:26.3596893Z",
"deletionDate": "2024-11-24T19:40:50.1013572Z"
}
}
特定のサブスクリプションの論理的に削除されたすべてのインスタンスを一覧表示する
サブスクリプション別の API Management List 操作を使用し、をサブスクリプション ID に置き換えます。
GET https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.ApiManagement/deletedservices?api-version=2024-05-01
このコマンドは、指定されたサブスクリプションで削除を取り消すことができる、ソフト削除されたすべてのサービスの一覧を返します。 各サービスの deletionDate と scheduledPurgeDate が表示されます。
ソフト削除されたインスタンスを回復する
API Management の 作成または更新 操作を使用して、 {subscriptionId}、 {resourceGroup}、 {apimServiceName} を Azure サブスクリプション、リソース グループ名、および API Management 名に置き換えます。
PUT
https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.ApiManagement/service/{apimServiceName}?api-version=2024-05-01
要求本文で、 restore プロパティを true に設定します。 (このフラグを指定して true に設定すると、他のすべてのプロパティは無視されます)。例えば:
{
"properties": {
"publisherEmail": "help@contoso.com",
"publisherName": "Contoso",
"restore": true
},
"sku": {
"name": "Developer",
"capacity": 1
},
"location": "South Central US"
}
論理的に削除されたインスタンスを消去する
注
論理的に削除されたインスタンスを消去するには、API Management インスタンスへの共同作成者アクセス権に加えて、ロールベースのアクセス制御 (RBAC) の Microsoft.ApiManagement/locations/deletedservices/delete と Microsoft.ApiManagement/deletedservices/read のアクセス許可が、サブスクリプション スコープで必要です。
API Management の消去 操作を使用して、 {subscriptionId}、 {location}、 {serviceName} を Azure サブスクリプション、リソースの場所、および API Management の名前に置き換えます。
DELETE https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.ApiManagement/locations/{location}/deletedservices/{serviceName}?api-version=2024-05-01
このコマンドは、AZURE から API Management インスタンスを完全に削除します。
削除後に API Management インスタンス名を再利用する
新しいデプロイでは、API Management インスタンスの名前を再利用 できます 。
インスタンスが Azure から完全に削除 (消去) された後。
元のインスタンスと同じサブスクリプション内。
新しいデプロイで API Management インスタンスの名前を再利用 することはできません 。
インスタンスがソフト削除されている間。
元のインスタンスのデプロイに使用されたもの以外のサブスクリプションでは、元のインスタンスが Azure から完全に削除 (消去) された後も同様です。 この制限は、新しいサブスクリプションが同じか別の Microsoft Entra テナントにあるかに関係なく適用されます。 この制限は、サブスクリプションの種類に応じて、削除後数日間以上有効です。
この制限は、未解決のドメイン ネーム システム (DNS) エントリによるサブドメインの引き継ぎの脅威を防ぐために、Azure が予約期間にサービス ホスト名を顧客のテナントに予約するためです。 詳細については、「 未解決の DNS エントリを防止し、サブドメインの引き継ぎを回避する」を参照してください。 Microsoft Entra テナント内のサブスクリプションのすべての未解決の DNS エントリを表示するには、「未解決の DNS エントリを識別する」を参照してください。
関連コンテンツ
長期的な API Management のバックアップと回復のオプションについて説明します。