セキュリティ
認証情報、公開する入口、ログの扱い。
Connection の認証情報と Handler の Secret は、暗号化して保存します。 Handler は、登録時に指定した Connection だけを使えます。 認証情報をコードに埋め込む必要はありません。
外への fetch は、割り当てた Connection に一致するホストだけに許可されます。公開ホストも同じです。
公開ページやフィードには --auth none を使い、認証情報を保存・送信せずに接続します。
完全に一致する1つのホストだけを許可し、ワイルドカードや suffix 一致は使えません。
HTTPS・443番ポートの制限、私的なアドレスや内部ホストの拒否、同じオリジン内だけのリダイレクトは、この方式にも適用されます。
別の Connection の認証情報で代用することはありません。
詳しくは Connectionを参照してください。
入口を選ぶ
API Trigger は、標準で bearer 認証を使います。 public にする場合は、送信元の署名をコードで確認してください。 同じイベントを二重に処理しないための確認も必要です。
Web アプリは、所有者と共有相手だけが使えます。 共有相手も、Handler を通じて所有者の権限を使います。 画面表示だけでなく、更新する処理でも権限を確認してください。
データを守る
Secret や閲覧者のメールアドレスを、結果やログに出さないでください。 出力すると Run の詳細として保存されます。 認証情報を暗号化していても、この出力は隠れません。
共有端末では、CLI は wings logout でログアウトしてください。
サーバー側での解除も完了したことを確認します。
Console と Web アプリについては、Web アプリのログアウトを確認してください。
脆弱性を報告する
公開 Issue に、秘密の値や再現用の実データを載せないでください。 security.txtの窓口か、lab@tempi.co.jpへ連絡します。 AGI Wings のセキュリティ報告であることを伝えてください。
一般的な問い合わせは、サポートへ送ってください。