Active DirectoryエントリのCSVをSFTPサーバーにアップロードするレシピ
このユースケースでは、Active Directory、CSVツール by Workato、SFTPを接続して強力な自動化を作成する手順を説明します。
このレシピの機能
このレシピは、Active Directoryで特定のエントリを毎日検索し、結果からCSV形式の文字列を作成して、その文字列をCSVファイルとしてSFTPサーバーにアップロードします。
レシピの作成
Active Directoryで従業員を毎日検索し、結果からCSVファイルを作成して、そのファイルをSFTPサーバーにアップロードするレシピを作成するには、次の手順を完了します:
ユースケースは例示のみを目的としています
このユースケースは一例です。 このレシピをワークフローに合わせて適応させるには、トリガー、アクション、または条件ロジックの変更が必要になる場合があります。
Workatoにサインインします。
レシピを作成する予定のプロジェクトを選択します。
Active DirectoryとSFTPのコネクションを作成します:
Workatoユーティリティコネクターにはセットアップが不要です
CSVツール by Workatoコネクターにはコネクションの設定は必要ありません。
Active Directoryコネクションを作成します。
Active Directoryコネクションの作成
この手順では、WorkatoとActive Directoryアカウントの間にコネクションを作成します。
作成 > コネクションをクリックするか、Cを2回押します。
新規コネクションページでActive Directoryを検索して選択します。
コネクション名フィールドにコネクションの名前を入力します。
ロケーションドロップダウンメニューを使用して、コネクションを保存するプロジェクトを選択します。
データベースが直接コネクションをサポートしていないネットワークで実行されている場合は、オンプレミスグループを選択します。 オンプレミスグループにアクティブなオンプレミスエージェントがあることを確認します。
OPAのconfig.ymlファイルで定義されているプロファイル名をオンプレミスLDAPコネクションプロファイルフィールドに入力します。 このオプションは、コネクションプロファイルをサポートするオンプレミスグループを選択した場合にのみ表示されます。
LDAP URLを入力します。 非SSLコネクションにはldap://myserver.example.com:389形式を使用し、SSLコネクションにはldaps://myserver.example.com:636形式を使用します。
LDAPサーバーで認証するために、ユーザー名(プリンシパル)、通常は管理者ユーザーの識別名(DN)を入力します。
LDAPサーバー認証用のパスワード(認証情報)を入力します。
LDAPリクエストのBase DNを入力します。 この設定により、LDAP操作で使用または受信するすべてのDNが、このLDAPパスを基準にした相対パスになります。
コネクションでSSL暗号化が必要な場合は、SSL設定の構成セクションを展開し、次のフィールドを設定します:
PEMエンコード証明書または信頼されたCAのパスを証明書フィールドに入力します。
PEMエンコードされたクライアント証明書の完全な内容をSSL証明書フィールドに入力します。
相互SSL設定用のプライベートSSL証明書キーを入力します。 SSL証明書を指定する場合、このフィールドは必須です。
自己署名証明書を有効または無効にするには、すべて信頼ドロップダウンメニューを使用します。
接続をクリックします。
コネクションフィールドに入力し、接続をクリックします
SFTPコネクションを作成します。
SFTPコネクションの作成
このステップでは、レシピ用のSFTPコネクションを作成します。
SFTP認証でのSSHキーの使用
SFTPはSecure Shell Protocol(SSH)上に構築されており、認証フローでSSHキーを使用できます。 SSHキーは、ユーザーIDとパスワードと併用することも、単独で使用してWorkatoをSFTPサーバーで認証することもできます。 これにより、公開キーと秘密キーにSSH暗号化を使用して、コネクションのセキュリティが強化されます。
コネクション設定
SFTPコネクションを設定するには、次の手順を完了します。
作成 > コネクションをクリックするか、Cを2回押します。
新規コネクションページでSFTPを検索して選択します。
コネクション名フィールドにコネクションの名前を入力します。
SFTPコネクションの設定
ロケーションドロップダウンメニューを使用して、コネクションを保存するプロジェクトを選択します。
コネクションタイプドロップダウンメニューを使用して、使用する予定のコネクション方式を選択します。 オンプレミスグループ名を選択するか、Cloudを選択して直接コネクションを使用できます。
認証タイプフィールドで認証方法を選択します。 使用可能なオプションは次のとおりです。
- ユーザー名/パスワード
- 公開キー/秘密キーペア
- 公開キー/秘密キーペアとパスワード
接続先のSFTPサーバーのユーザー名をユーザー名フィールドに入力します。
認証タイプフィールドでの選択に基づいて、追加の認証情報を入力します。
SFTPサーバーのアドレスをホスト名フィールドに入力します。
SFTPサーバーのポートをポートフィールドに入力します。 SFTPのデフォルトポートは22です。
任意です。 ホストキーのフィンガープリントフィールドに、SSH公開キーのハッシュを入力します。 WorkatoはSHA256およびMD5暗号化をサポートしています。 オンプレミスコネクションの場合は、SFTPサーバー管理者に連絡してBase64形式の公開キーを取得します。
任意です。 ファイル転送に使用するバッファーのサイズを転送バッファーサイズフィールドに入力します。
任意です。 各トランザクションの終了時にSSHコネクションを閉じるかどうかを、強制クローズフィールドで指定します。 SFTPサーバーコネクションが応答しなくなる場合は、このオプションを切り替えます。 それ以外の場合は、空白のままにします。
任意です。 明示的なバージョンフィールドで、使用するSFTPプロトコルバージョンを設定します。
追加操作をサポートしていますか?ドロップダウンメニューを使用して、SFTPプロバイダーが追加または変更操作をサポートするかどうかを指定します。 デフォルト設定はYesです。
接続をクリックします。
プロジェクトに戻り、Create > Recipeをクリックするか、C+Rを押します。
新しいレシピを作成
Nameフィールドにレシピの名前を入力します。
Locationドロップダウンメニューから、レシピを保存する予定のプロジェクトを選択します。
ビルドを開始をクリックします。
レシピの構築を開始
開始点を選択をクリックし、アプリからのトリガーを選択します。
Select an app and trigger eventをクリックします。
Active Directoryの検索フィルターを使用したスケジュール済みエントリ検索トリガーを設定します。
Active Directoryの検索フィルターを使用したスケジュール済みエントリ検索トリガーの設定
このトリガーは、Active Directoryで特定のエントリを毎日検索します。
Active Directoryを検索し、アプリとして選択します。
Active Directoryを選択
検索フィルターを使用したスケジュール済みエントリ検索トリガーを選択します。
検索フィルターを使用したスケジュール済みエントリ検索トリガーを選択
Active Directoryインスタンス内の既知のエントリの識別名を、サンプルエントリDNフィールドに入力します。 例: CN=Jake Smith,OU=People。
サンプルエントリDN設定の例
選択するエントリに、CSVファイルの列名として使用する予定のすべてのフィールドが含まれていることを確認します。 このフィールドでは、Formulaまたはデータピルを使用しないでください。
トリガー対象ドロップダウンメニューを使用して、特定の間隔を選択します。
スケジュール設定セクションを展開し、毎ドロップダウンメニューから1日を選択します。
検索するActive Directoryエントリを指定するために、エントリ検索フィルターフィールドにフィルターを入力します。 たとえば、objectClassがPersonと等しい結果を返すには、objectClass=Personを入力します。
+ Add stepをクリックし、Action in appを選択します。
Add step > Add action in appをクリック
CSVツール by WorkatoのCompose CSVアクションを設定します。
CSVツール by WorkatoのCompose CSVアクションを設定する
このステップでは、Active Directory検索の出力からCSV形式の文字列を作成します。
CSV tools by Workatoを検索し、アプリとして選択します。
CSVツール by Workatoを選択
CSVを作成アクションを選択します。
CSVを作成アクションを選択
CSVファイルに含める予定の列名を、CSV列名フィールドに入力します。 Workatoはこれらの列名を使用して、CSVデータ行セクションに入力フィールドを生成します。
たとえば、このレシピでは次の列名を使用します:
employee_id
display_name
bad_pwd_count
street_address
postal_code
mobile
title
employee_type
department
lastLogonCSVファイルに列名を含めるかどうかを指定するには、ヘッダー行を作成ドロップダウンメニューを使用します。
Active DirectoryのエントリStep 1リストデータピルを、CSVデータ行のソースリストフィールドにマッピングします。
関連するActive Directoryデータピルを、CSVデータ行フィールドセクションのフィールドにマッピングします。 これらのフィールドは、CSV列名に入力した列名に対応し、前のレシピステップで指定したサンプルエントリDN値によって決まります。
たとえば、このレシピではActive DirectoryのemployeeIDStep 1データピルをemployee_idに、displayNameStep 1をdisplay_nameにマッピングします。以降も同様です。
完了した設定
+ Add stepをクリックし、Action in appを選択します。
SFTPのファイルをアップロードアクションを設定します。
SFTPのファイルをアップロードアクションの設定
このステップでは、CSV文字列を使用し、CSVファイルとしてSFTPサーバー内の特定のパスにアップロードします。
SFTPを検索し、アプリとして選択します。
SFTPを選択
ファイルをアップロードアクションを選択します。
ファイルをアップロードアクションを選択
ファイルパスフィールドに、名前を含むファイルへのフルパスを入力します。 ファイルを追加しようとする前に、指定したパスのフォルダが存在することを確認します。
たとえば、このレシピではファイルパスフィールドをFormulaモードに切り替え、次のファイルパスを使用します:
"/sftp/employees_report_{JOB_CREATED_AT}.strftime('%Y-%m-%d')}.csv"この例では、{JOB_CREATED_AT}はジョブ作成日時Propertiesデータピルを表します。 このパス設定により、各ファイルにジョブ作成日に基づく一意の名前が付けられます。
ファイルパス設定の例
ファイルコンテンツフィールドを設定
同じ名前のファイルがSFTPサーバー上にすでに存在する場合に、ファイルコンテンツを追加するか上書きするかを指定するには、追加ドロップダウンメニューを使用します。
たとえば、ジョブを再実行して既存のファイルに新しいデータを追加する予定がある場合は、このフィールドをはいに設定できます。
保存をクリックします。
Active DirectoryエントリのCSVをSFTPサーバーにアップロードするレシピをテストして実装する準備ができました。
レシピ設定の例。
Active Directory、CSVツール by Workato、SFTPのレシピ
Last updated: