コネクタープロジェクトの保護
コネクターをローカルで構築する場合、認証情報とアプリケーションアクセスを保護する責任はすべてユーザーが負います。 GitHubなどのGitソフトウェアにコードをプッシュする場合は、特に重要です。
怖く聞こえますか。 そうである必要はありません。
このガイドでは、認証情報やその他の機密情報を扱う際にリスクを軽減するためのヒントをいくつか紹介します。
ヒント1:常にサンドボックスを使用する
SDK gemを使用して構築する場合でも、Workatoのクラウドプラットフォームで構築する場合でも、開発時にプロダクションEnvironmentを使用しないでください。 これはいくら強調してもしすぎることはありません。
ビジネスに悪影響を与える変更を加えたり、機密データを公開してしまったりする可能性があります。 このため、常にサンドボックスEnvironmentを使用してください。
ヒント2:常に暗号化ファイルを使用する
認証情報を安全に保つには、保存に暗号化ファイルを使用します。
SDK gemには、暗号化ファイルを簡単に作成および更新できるコマンドが含まれています。 つまり、認証情報を暗号化して、master.keyがなければ使用または復号できないようにできます。
暗号化ファイルの使用を開始するには、workato editコマンドを使用して、暗号化されたmaster.keyファイルを作成します。 プロジェクトにこのファイルがない場合、コマンドを初めて実行したときに自動的に作成されます。
ヒント3:常に暗号化されたVCR記録を使用する
VCR記録は安定したテストに不可欠ですが、セキュリティリスクも伴います。 デフォルトでは、VCR記録はヘッダー内のトークンやリクエストデータまたはレスポンスデータなど、HTTPリクエストのすべての側面を記録します。 このデータをクラウドに同期する場合、ベストプラクティスはVCR記録を暗号化することです。
SDK gemにより、コネクタープロジェクトをセットアップするときにこれを簡単に行えます。
workato newを実行した後、HTTPバインディングプロンプトでsecureを選択します:
Please select default HTTP mocking behavior suitable for your project?
1 - secure. Cause an error to be raised for any unknown requests, all request recordings are encrypted.
To record a new cassette you need set VCR_RECORD_MODE environment variable
Example: VCR_RECORD_MODE=once bundle exec rspec spec/actions/test_action_spec.rb
2 - simple. Record new interaction if it is a new request, requests are stored as plain text and expose secret tokens.このオプションでは、VCR設定と暗号化が事前に読み込まれたspec_helper.rbファイルも作成されます。 VCRの詳細については、VCRガイドをご覧ください。
ヒント4:master.keyを.gitignoreに追加する
プロジェクトにmaster.keyファイルが含まれている場合(含めることを強くお勧めします)、Gitリポジトリにプッシュしてはいけません。
このファイルを誤ってコミットしないように、プロジェクトの.gitignoreに追加します。
さらに、master.key内の情報をチームメイトと共有する必要がある場合は、安全な方法で行うようにしてください。
ヒント5:リポジトリシークレットを使用してクラウドに認証情報を保存する
クラウドで認証情報を安全に保存しながらRSpecテストを実行するには、リポジトリにシークレットを追加することをお勧めします。
GITHUB SECRETS
シークレットは、組織、リポジトリ、またはリポジトリEnvironmentで作成する暗号化されたEnvironment変数です。 追加情報については、GitHubの暗号化されたシークレットドキュメントを参照してください。
ほとんどのGitプラットフォームでは、リポジトリへのシークレットの追加がサポートされています。RSpecテスト中に使用するmaster.keyは、そこに保存することをお勧めします。
Last updated: