Anypoint API Governance の概要

Anypoint API Governance は、API ライフサイクルの一部として API にガバナンスルールを適用できる、Anypoint Platform のコンポーネントです。

Anypoint API Governance では、次の作業を行うことができます。

  • 組織の API 品質を改善する:

    管理対象 API の準拠の問題を特定し、それらを解決するための手順を実行します。

  • ガバナンスのベストプラクティスを共有および適用する:

    ガバナンスルールセットをカスタマイズしてパブリッシュし、組織固有のベストプラクティスを開発者と共有および適用します。

  • 設計時からデプロイメントで一貫したルールを適用する:

    ガバナンスルールセットを使用して、設計時の仕様からデプロイメント時のインスタンスまで、API の複数のアスペクトに一元化されたガバナンスを適用します。

  • DevOps 組織内でガバナンスを適用する:

    CI/CD パイプラインで CLI コマンドを使用して、API Governance を自動化します。

Anypoint API Governance の概要動画

Anypoint API Governance の「Product Spotlight (製品スポットライト)」動画で Anypoint API Governance の概要を確認してください。

Governance コンソール

API Governance コンソールで、ガバナンス管理者は​ガバナンスルールセット​を​ガバナンスプロファイル​に追加して、組織全体で複数の API にガバナンスルールセットを適用できます。API Governance コンソールには、検証されたすべての API の準拠の概要が表示されます。 API の準拠を監視し、準拠を改善するために開発者に通知します。

API Governance コンソールのスクリーンショット
1 ガバナンスプロファイル​、​ガバナンス状況​、​準拠状況​、​重大度別非準拠​の数値および視覚的な概要を確認します。
2 ガバナンスプロファイルまたは管理対象 API の概要リストの確認、絞り込み、検索を行います。
3 準拠レポートを CSV 形式でエクスポートします。
4 新しいプロファイルを追加します。
5 API の包括的なガバナンスレポートを確認します。
6 その他のオプションメニューから選択して、関連するアクションを実行します。選択したプロファイルまたは API のレポートをエクスポートしたり、プロファイルを表示、編集、削除したり、API オーナーに通知したり、Exchange で API を開いたりすることができます。

Anypoint Platform 全体のガバナンス

Anypoint Platform コンソールで API 準拠情報を表示するだけでなく、開発者、アーキテクト、実装者は、次のツールを使用してガバナンス準拠情報を表示し、問題を修正するためのアクションを実行できます。

  • Exchange

    • 開発者は、パブリッシュされた API 仕様の準拠状況の詳細を表示し、ルールセットを検出し、カスタムルールセットをパブリッシュできます。

    • 実装者は、ルールセットを表示して、API インスタンスの準拠の問題を修正する方法を決定できます。

  • Design Center API Designer:

    • 開発者やアーキテクトは、ガバナンスルールセットを連動関係として API 仕様に直接適用して、API 設計フェーズで API 準拠を確認できます。

  • API Manager:

    • 実装者は、包括的なガバナンスレポートを表示して、API インスタンスの準拠を確認できます。

Anypoint API Governance の概念

Anypoint API Governance を使用するために知っておく必要のある概念を次に示します。

ガバナンスプロファイル

ガバナンスプロファイルは、選択したガバナンスルールセットを絞り込んだ API グループに適用します。その後、API Governance はルールセットに対して API を検証し、ガバナンス準拠を判断します。

ガバナンスルールセット

ガバナンスルールセットは、Anypoint Platform の API から抽出されたメタデータに適用できる、ルールのコレクションまたはガイドラインです。ガバナンスルールセットを適用に使用できる例:

  • 命名規則などの内部および外部のベストプラクティスのガイドライン

  • 機密 API データ (HTTPS) の暗号化 (HTTPS) などの業界固有の政府標準

MuleSoft は、「Anypoint API Best Practices (Anypoint API ベストプラクティス)」、「OpenAPI Best Practices (OpenAPI ベストプラクティス)」、「Authentication Security Best Practices (認証セキュリティベストプラクティス)」、「Mule API Management Best Practices (Mule API 管理ベストプラクティス)」など、Exchange でいくつかのルールセットを提供しています。​[Rulesets (ルールセット)]​ 種別で検索を絞り込んで、Exchange のルールセットを発見できます。​「アセットの検索」​を参照してください。

管理対象 API

API は、少なくとも 1 つのガバナンスプロファイルの選択条件によって識別された場合に管理されます。API が管理されている場合、その API のすべてのバージョンが 1 つの管理対象 API とみなされます。サブスクリプション制限は、組織の購入済みの容量に基づいて設定されます。UI には使用量に関する情報が表示され、サブスクリプション容量に近づいたり超えたりしたときにアラートが表示されます。

API 準拠

API 準拠は、検証済み API 仕様が 1 つ以上のガバナンスルールセット内のすべての必須ルールに合格するかどうかを示します。API 仕様が複数のガバナンスプロファイルに含まれている場合、準拠するには、それらすべてのプロファイルのすべてのルールセットに合格する必要があります。

API 準拠状況

API 準拠状況は、ガバナンスプロファイルに含まれている API が適用されるすべてのガバナンスルールセットに合格するかどうかを示します。

  • Conformant (準拠):

    API は、適用されるすべてのガバナンスルールセットに合格しています。

  • Not Conformant (非準拠):

    API は、少なくとも 1 つのガバナンスルールセットで失敗しています。

  • Not Validated (未検証):

    API は、ガバナンスプロファイルに含まれていないため検証されていません。

API の各バージョンの API 準拠状況は異なる可能性があります。API Governance コンソールにはバージョンの準拠状況の総数が表示され、API Governance、Exchange、API Manager には API バージョンの準拠状況インジケーターが表示されます。

API 準拠は、REST API や AsyncAPI など、API Governance によってサポートされる API 種別のみに適用されます。
準拠の重大度

準拠の重大度は、すべての必須ルールセットの中で合格したルールセットの割合によって分類されます。

  • High Severity (重大度高):

    0 ~ 40% のルールセットに合格

  • Medium Severity (重大度中):

    41% ~ 80% のルールセットに合格

  • Low Severity (重大度低):

    81% ~ 99% のルールセットに合格

ガバナンス状況

API Governance コンソールのガバナンス状況には、管理対象 API の数、サポート対象 API 種別の API の総数、サブスクリプション制限の情報が表示されます。

ガバナンスプロファイルの状況

API Governance コンソールでプロファイルの状況を確認できます。ガバナンスプロファイルの状況は、プロファイル内の準拠 API の割合に基づいています。

  • Normal (通常):

    API の 70% 以上が準拠しています。

  • At Risk (リスクあり):

    API の 70% 未満が準拠しています。

プロジェクトエラー

プロジェクトエラーは、Design Center API Designer テキストエディターページに表示されます。ページの ​[Project Errors (プロジェクトエラー)]​ セクションに、テキストエディターで開いている API 仕様の機能上の問題と準拠メッセージが表示されます。

API

すべての側面を含む API 全体。Anypoint Platform では、管理する製品のコンテキストでは API の側面が単に API と呼ばれることもあります。たとえば、Exchange では、API が API の仕様、ドキュメント、カタログを指す場合があります。API Designer では、API が API 仕様を指す場合があります。API カタログでは、API が API のインスタンス、ポリシー、コントラクトを指す場合があります。

API の側面

API の各部。API の側面の例としては、仕様、インスタンス、カタログ情報、ドキュメントなどがあります。

API 仕様

API の機能と予期される動作、そして設計の基本理念やサポートされるデータ型などの詳細を定義します。API 仕様にはドキュメントと API 定義が含まれ、人間とソフトウェアが読むことのできるコントラクトを作成します。

API 実装

API を機能させるための API 仕様の具現化。

API インスタンス

API 実装のインスタンス化。API にはさまざまな環境やゲートウェイの複数のインスタンスを含めることができ、クライアントはこれらを使用して API コールを行うことができます。設定されていてもデプロイされていないインスタンスもこの側面の一部としてキャプチャされます。

インスタンスは、アップストリーム用の API のプロキシ、またはアプリケーションエンドポイントのいずれかです。

API ドキュメント

コンシューマーが API について理解して使用するのに役立ち、例、ユースケース、チュートリアルなどのコンテンツが含まれています。

API カタログ情報

名前、バージョン、オーナー (コンタクト)、タグ、カテゴリなど、API カタログの API のエントリに関連したプロパティ。 Anypoint Platform では、これらのプロパティは Exchange の API アセットに関連付けられています。