Exchange へのカスタムポリシーのアップロード

Exchange では、Maven クライアントを使用してアセットをパブリッシュまたはコンシュームする API が提供されます。アセットをパブリッシュするには、一意のアーティファクト名と組織 ID が必要です。API Manager は、組織のアセットとしてパブリッシュされたカスタムポリシーをリストします。

Exchange Maven Facade アセットについての詳細は、 「Exchange Maven Facade」Leaving the Site​を参照してください。

前提条件

Exchange にカスタムポリシーをアップロードするには、Exchange Contributor (Exchange コントリビューター) ロールが必要です。

Maven アーキタイプを使用して作成されたポリシーをデプロイする

提供された Maven アーキタイプを使用してカスタムポリシープロジェクトを作成する場合、ポリシーを Exchange にアップロードするために必要なプラグインが事前定義されています。​「アーキタイプを使用したプロジェクトのセットアップ」​を参照してください。

Maven アーキタイプを使用して作成されたポリシーをデプロイする手順は、次のとおりです。

  1. Maven ​.m2​ ディレクトリで、Exchange ログイン情報を使用して ​settings.xml​ ファイルを更新します。

    <?xml version="1.0" encoding="UTF-8"?>
    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
      <servers>
        <server>
           <id>exchange-server</id>
           <username>myusername</username>
           <password>mypassword</password>
         </server>
      </servers>
    </settings>
    xml
    ログイン情報でなく、トークンを使用した認証方法についての詳細は、​「統合アセットをパブリッシュおよびコンシュームする」​を参照してください。
  2. mvn clean deploy​ を実行してポリシーを Exchange にパブリッシュします。

    これで、指定された組織に属する API にカスタムポリシーを適用できます。

Maven アーキタイプを使用せずに作成されたポリシーをデプロイする

提供された Maven アーキタイプを使用してカスタムポリシープロジェクトを作成していない場合は、Exchange デプロイメント設定を手動で定義する必要があります。

Maven アーキタイプを使用せずに作成されたポリシーをデプロイする手順は、次のとおりです。

  1. Anypoint Platform で、使用する組織 ID を次の方法で検索します。

    1. [Access Management (アクセス管理)] > [Organization (組織)]​ に移動します。

    2. 組織の名前をクリックします。

    3. ブラウザーアドレスから UUID をコピーします。たとえば、URL から ​2a4b93c3-7899-4ea7-9374-f787744d8784​ をコピーします。

  2. pom.xml​ ファイルを次のとおり更新します。

    1. groupId​ 値を前のステップの組織 ID に置き換えます。

      <groupId>{orgId}</groupId>
      XML
    2. 次のプロパティを追加して、​{orgId}​ を前のステップの組織 ID に置き換えます。

      <properties>
        <exchange.url>https://maven.anypoint.mulesoft.com/api/v1/organizations/{OrgId}/maven</exchange.url>
        <mule.maven.plugin.version>3.2.0</mule.maven.plugin.version> <!-- check for last available version -->
      </properties>
      XML
    3. Exchange をリポジトリとして定義します。

      <repository>
      	<id>exchange-server</id>
      	<name>MuleSoft Exchange Environment</name>
      	<url>${exchange.url}</url>
      	<snapshots>
      		<enabled>true</enabled>
      	</snapshots>
      </repository>
      XML
    4. Exchange サーバーを配布管理リポジトリとしてセットアップします。

      <distributionManagement>
          <repository>
              <id>exchange-server</id>
              <name>Corporate Repository</name>
              <url>${exchange.url}</url>
              <layout>default</layout>
          </repository>
      </distributionManagement>
      XML
    5. 次の構築プラグインを追加します。

      • Mule Maven プラグイン: 必要なすべてのファイルが存在し、ポリシーを適切にパッケージ化するためのすべての要件を満たしていることを確認する。

      • Maven デプロイプラグイン: Exchange リポジトリと通信し、ポリシーの JAR および YAML ファイルをアップロードする。

    6. 次のプラグインリポジトリを追加します。

      <pluginRepositories>
          <pluginRepository>
              <id>mule-plugin</id>
              <name>Mule Repository</name>
              <url>https://repository.mulesoft.org/nexus/content/repositories/public/</url>
          </pluginRepository>
      </pluginRepositories>
      XML
  3. Maven ​.m2​ ディレクトリで、Exchange ログイン情報を使用して settings.xml ファイルを更新します。

    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
      <servers>
        <server>
           <id>exchange-server</id>
           <username>myusername</username>
           <password>mypassword</password>
         </server>
      </servers>
    </settings>
    XML
    ログイン情報でなく、トークンを使用した認証方法についての詳細は、​「統合アセットをパブリッシュおよびコンシュームする」​を参照してください。
  4. mvn clean deploy​ コマンドを使用してポリシーをデプロイします。

    Exchange リポジトリに定義される ID は一致する必要があります。

    これで、指定された組織に属する API にカスタムポリシーを適用できます。