はじめに
Workatoの導入を検討する際に役立つセキュリティに関する情報をまとめてみました。これからWorkatoの導入を検討していて、Workatoのセキュリティ・コンプライアンスを確認する必要がある場合や、セキュリティチェックシートを作成しなければならない場合において、少しでも参考になりましたら幸いです。
なお、本ページは以下のページに記載されている情報ならびに https://docs.workato.com/ で公開されている情報をもとに作成しています。また、本内容は 2024/4/28 時点の情報になります。
コンプライアンス
SOC-1, SOC-2
WorkatoはSOC-1およびSOC-2の監査を受けています。
HIPAA
WorkatoはHIPAAに準拠し、かつ外部の監査会社からHIPAAのコンプライアンス証明を取得しています。
ユーザー管理
認証方法
ビルトイン(ユーザー名とパスワードによる認証)とSAML SSOに対応しています。
SSO
SAML SSOに対応しています。
※以下のページにGSuite, EntraID (AzureAD), CyberArk Idaptive, Okta, OneLoginの設定手順が記載されています。
また、SCIMによる同期(プロビジョニング・デプロビジョニング・属性更新)にも対応しています。
パスワードポリシー(桁数・複雑性)
8文字以上、かつ大文字・小文字・数字・記号(特殊文字)より3種類、それぞれ1文字以上含まれることが必須要件となっています。設定されたパスワードは、ハッシュとしてWorkatoのデータベース上に保存されます。
2要素認証
標準でTOTPベースの2要素認証に対応しています。
※Google Autenticator, Authy, Microsoft AuthenticatorなどのTOTP対応のMFAアプリに対応
SAML SSO利用時は、SAMLプロバイダの設定に準じます。
ログインセッションの有効期限(自動ログアウト)
一定期間経過後に自動ログアウト(タイムアウト)の強制が可能です。自動ログアウトまでの時間は、自動ログアウトまでの時間はユーザー側で設定可能です(15分~14日の間で設定可能)。
ユーザー権限
ロールベースのアクセス制御と、カスタムロールに対応しています。
環境の分離
開発・テスト・本番各環境の分離
Environments機能により、開発、テスト・本番各環境の分離が可能です。
開発→テスト、開発→本番のデプロイは、Recipe Lifecycle Management機能を利用することで可能です。
組織の分離
Automation HQによりチームやプロジェクト単位で個別のワークスペースの構成が可能です。
データの保護
通信の暗号化
Webサイトおよびプラットフォーム
WorkatoのWebサイトならびにプラットフォームは、HTTPSでのみアクセス可能です。また、少なくとも128ビットのキー長を持つ強力な暗号化アルゴリズムの使用など、セキュリティに関する現在のベストプラクティスに従っています。
Workatoとパブリックネットワーク上のシステム間の通信
HTTPS, SFTP, FTPSなどの暗号化に対応したプロトコルをサポートしています。プロトコルは、ユーザーの選択に依存します。(ユーザーが非暗号化プロトコルを選択した場合、通信は暗号化されず、平文による通信になります)
Workatoとプライベートネットワーク内のシステム間の通信
Workatoでは、On-Premise Agentを利用することで、オンプレミス環境等のプライベートネットワーク内のシステムと連携することが出来ます。WorkatoとOn-Premise Agent間はTLS WebSocket トンネルを確立して接続され、Workatoとプライベート間のセキュアな通信を実現します。
APIプラットフォーム
API プラットフォームエンドポイントは、少なくともHTTP 1.0以上でTLS 1.2および1.3 をサポートします。
ファイアウォール
Workatoは、内部アプリケーション・システムをパブリック・インターネットから分離する多層アーキテクチャを採用しています。
ウェブサイトへのパブリックトラフィックは、ウェブアプリケーションファイアウォール(WAF)を通過した後、プライベートサブネット上で動作する内部システムにルーティングされます。
内部および外部のネットワーク・トラフィックは、セキュアで暗号化されたプロトコルを使用します。データセンター内およびデータセンターと外部サービス間のすべてのネットワーク・アクセスは、ファイアウォールとルーティング・ルールによって制限されています。
データの暗号化
標準機能(Workatoがデフォルトで提供)
Workato上に保存されるデータは、すべて強力な暗号化アルゴリズム(AES-256)によって暗号化されます。
- データとは、レシピ、コネクション、Lookup table、ユーザープロファイル、ジョブレポート、監査ログなどを指します
- ジョブレポートのデータは、Workatoが利用するクラウドプロバイダとテナント固有キーによって管理されるグローバルキーによって二重に暗号化されます
Enterprise Key Management(ユーザーが管理する暗号化キーを利用)
Enterprise Key Managementを利用することで、ユーザーが管理するキー(BYOK)を利用してデータの保護を行うことも可能です。Amazon Key Management Service (KMS) とカスタムキーのいずれかで対応可能です。
Amazon Key Management Service (KMS)を利用
カスタムキーを利用
接続資格情報の管理
パスワードやAPIトークン等の資格情報はデフォルトでWorkato上で管理されますが、HashiCorp VaultやAzure Key Vault, AWS Secret Manager等の外部のシークレットマネージャを利用して管理することも可能です。
データのプライバシー(プライバシーポリシー)
Workatoが収集する個人情報の種類、それらの情報の取り扱い、ユーザーのプライバシーに関する権利については、以下に定められています。
ジョブデータ(ジョブ履歴)の保存期間
デフォルトで30日間、オプションの導入により0(記録なし)~90日間でカスタマイズ可能です。
データマスキング
機密データを含むステップのデータをマスクすることが可能です。マスクされたデータ(ステップの入出力結果)はジョブ履歴にも記録されません。
監査ログ
アカウント(ワークスペース)のアクティビティが1年間保存されます。
監査ログに記録されるアクティビティのリスト
監査ログストリーミング
監査ログストリーミング機能を利用することで、Amazon S3やSumoLogic, DataDog, Splunkなどに監査ログを記録することが可能です。1年以上保持する必要がある場合や、こちらの機能で対応します。
セキュリティに関するベストプラクティス
以下は、ユーザー側でWorkatoのレシピ開発ならびにAPI開発を行う際におけるセキュリティ関連のベストプラクティスです。
レシピのセキュリティに関するベストプラクティス
APIのセキュリティに関するベストプラクティス
アクセス制限
接続元IPアドレス制限(Workatoにおけるアクセス制限)
SAMLプロバイダが対応していれば、SAML SSOを利用することで、接続元IPアドレス制限が可能です。なお、Workatoの設定として、接続元IPアドレス制限は提供されていません。
IP許可リスト(連携先システム等におけるアクセス制限への対応)
連携先システム側で接続元のIP制限を行っている場合や、インターネットの利用が制限された環境からWorkatoの利用を行う必要がある場合は、以下のURLに記載されているIPアドレスならびにFQDNを参考にファイアウォール等の制限緩和を行ってください。
FAQ
ホスティング環境
Workatoは、Amazon Web Services (AWS) のパブリッククラウドインフラ上にホストされています。
リージョン
データセンターの場所
Workatoは、米国、日本、EU、シンガポール、オーストラリアの5つのリージョンのデータセンターでサービスを提供しています。ユーザーは契約した地域のデータセンター上でWorkatoを利用することが可能です。
リージョン間のデータ共有
Workatoは、顧客データ(レシピ、コネクション等)をリージョン間で共有または転送しません。地域内の各データセンターは個別に顧客アカウントをホストしています。(データセンターごとに顧客データおよびアカウントが独立して管理されています)
- アカウント管理は各リージョンごとに独立しているため、データセンターを変更する際はアカウントの再設定が必要となります
- 現在運用中のレシピを異なるデータセンターへコピーする場合は、ファイルとしてレシピをエクスポートし、コピー先のデータセンター上で当該ファイルをインポートします。サービスとしてデータセンター間のファイルコピー(マイグレーション)機能は提供されていません
- コピーされたレシピの運用を開始するには、接続情報(コネクション)等の再設定が必要となります
障害情報
稼働状況ならびに障害情報については、以下のページで確認可能です。
また、セキュリティとパフォーマンス(ダウンタイム、処理遅延等)にかかわる問題等、インシデントの度合いによってはメールでユーザーに対して通知が行われます。