最初のカスタム インテグレーションを開発する
このドキュメントでは、商用インテグレーションと同じ構造で統合開発環境(IDE)にカスタム インテグレーションを作成する方法について説明します。カスタム インテグレーションはコンテンツ ハブに表示されます。コンテンツ ハブでは、プレイブック、手動アクション、リモート エージェントで使用するさまざまな環境に合わせてカスタム インテグレーションを構成できます。他の IDE アイテムと同様に、カスタム インテグレーションをインポートおよびエクスポートすることもできます。
このカスタム インテグレーションの例では、WHOIS XML API プロダクトのカスタム インテグレーションを作成します。まず、WHOIS プロダクトへの登録プロセスを含む最初のインテグレーションを作成します。これには、プロダクトへの登録と必要な API キーの作成が含まれます。
統合するプロダクトを選択する
- この例では、WHOIS XML API プロダクトと統合します。これは、登録者の名前、組織、メールアドレス、登録住所、登録事業者の情報、ドメインの作成、有効期限、更新日、ドメインの可用性、経過年数など、ドメインデータへの API アクセスを提供する無料のオープンソース ツールです。
- WHOIS XML API/ に移動して登録します。
- ログインしたら、アカウント ページ( https://user.whoisxmlapi.com/products )から API キーを取得します。
- この API キーをインテグレーション パラメータで使用します。
IDE で最初のカスタム インテグレーションを作成する
IDE で最初のカスタム インテグレーションを作成する手順は次のとおりです。
- [Response > IDE] ページで、 [add] [Add] をクリックして新しい IDE アイテムを追加します。
- [Integration] ラジオボタンを選択し、インテグレーションの名前を入力します。
- [作成] をクリックします。カスタム インテグレーション アイコンとともにインテグレーションが表示されます。
- [Settings] をクリックします。
- インテグレーション ダイアログで、[Icon]、[Description]、[Python Dependencies]、[Integration Parameters] を定義します。
この例では、次の詳細が表示されます。 - WhoisXML API のロゴ画像がアップロードされます。 この画像は、インテグレーションとともにコンテンツ ハブに表示されます。
- IDE のインテグレーションの横に、簡単な説明と 1 つのパラメータ(API キー)を含む SVG アイコンが追加されました。これは、Who Is XML API プロダクトがインテグレーションの構成に必要とするパラメータです。
- このインテグレーションには追加の Python ライブラリは必要ありません。デフォルトでは、インテグレーションは Python 3.7 で実行するように設定されています。バージョンは [設定] で変更できます。
デフォルト インスタンスを構成する
インテグレーションを作成すると、Google SecOps レスポンス インテグレーションで確認できます(検索バーでインテグレーション名を検索するか、インテグレーション タイプで [**カスタム インテグレーション**] をフィルタします)。インテグレーション用に定義した画像、説明、パラメータが表示されます。
- [**設定**] > [**デフォルト インスタンスを構成**] をクリックします。
- API キーを入力して [保存] をクリックします。
- 省略可: 別の環境(デフォルト環境以外)のインテグレーションを構成するには、[構成] タブをクリックして、そのインスタンスのパラメータを設定します。
Ping アクションを作成する
- [Response > IDE] で、 [add] [Add > Add New IDE Item] をクリックします。
- [Action] ラジオボタンを選択し、名前を入力して、 インテグレーションを選択します。
- [作成] をクリックします。生成されたコード テンプレートを確認します。
-
Ping アクションの次のコードをコピーします。Ping アクションは、インテグレーション用に構成した
API Keyパラメータを使用し、テスト用にプロダクトから提供された URL に配置します。詳細については、カスタム アクションを作成するをご覧ください。 - アクションの上の切り替えをクリックし、[保存] をクリックしてプロダクトへの接続をテストします。
- [Google SecOps Marketplace] に移動し、[デフォルト インスタンスを構成] をクリックして、インテグレーションが構成され、保存されていることを確認します。
- [テスト] をクリックしてインテグレーションをテストします。接続に成功すると緑色のチェックマークが表示され、接続に失敗すると X と関連するエラーが表示されます。
- 認証が完了したら、カスタム インテグレーションで最初のカスタム アクションを作成します。詳細については、カスタム アクションを作成するをご覧ください。
from SiemplifyAction import SiemplifyAction
from SiemplifyUtils import output_handler
import requests
INTEGRATION_NAME = "My first Integration - Whois XML API"
SCRIPT_NAME = "Whois XML API Ping"
@output_handler
def main():
siemplify = SiemplifyAction()
siemplify.script_name = SCRIPT_NAME
api_key = siemplify.extract_configuration_param(provider_name=INTEGRATION_NAME,
param_name="API Key")
url = "https://www.whoisxmlapi.com/whoisserver/WhoisService?apiKey={api_key}&domainName=google.com".format(api_key=api_key)
res = requests.get(url)
res.raise_for_status()
if "ApiKey authenticate failed" in res.content.decode("utf-8"):
raise Exception("Error, bad credentials")
siemplify.end("Successful Connection", True)
if __name__ == "__main__":
main()
さらにサポートが必要な場合コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。