Skip to main content
セキュリティスキャンはアプリ全体を確認し、検出した問題を明確なリストで表示します。各問題について、何が問題なのかを説明し、ワンクリックで適用できる推奨修正を提示します。
アプリのセキュリティはあなたの責任です。AI チャットは設定を助けることができますが、意図したとおりに構成されているかを確認するため、必ず設定を見直し、セキュリティスキャンを実行してください。
セキュリティスキャンと Fix All は、無料プランを含むすべてのプランで利用できます。

スキャンを実行する

セキュリティスキャンを実行する手順:
  1. アプリエディタで Dashboard をクリックします。
  2. Security をクリックします。
  3. Run Security Scan をクリックします。
  4. スキャンで検出された問題を確認します。Cards ビューと Table ビューを切り替え、ドロップダウンで問題のグループや重大度レベルに移動します。
  5. 修正を適用します:
    • Fix all issues をクリックして推奨修正をすべて一度に適用するか、グループの Fix All をクリックしてそのグループだけを修正します。
    • 特定の問題を選択して Fix selected をクリックすると、選んだ問題だけを修正できます。
    • 個別の問題を展開して、単独で確認および修正します。問題ごとのボタンは Cards ビューに表示されます。
Running a security scan on your app

Running a security scan on your app

スキャンは自動的に修正を適用しません。適用前に推奨内容を確認してください。露出した認証情報やログインギャップの問題については、AI チャットの Discuss モードに問題を貼り付けると、手順が得られます。

スキャン結果の見方

スキャンでは 7 種類の問題が確認されます。

データ権限の問題

データテーブルに権限ルールが欠けている場合、または必要以上のアクセスが与えられている場合に表示されます。各問題には、影響を受けるテーブル、問題の説明、推奨ルールの表が表示されます。Fix All をクリックして推奨を適用するか、テーブルに入り権限を手動でカスタマイズします。

シークレットの露出

アプリの訪問者からアクセスできる場所に API キー、パスワード、トークンが見つかったときに表示されます。これらの認証情報を見つけた人は、誰でも外部サービスやデータにアクセスできてしまいます。露出した認証情報を修正するには、対象の場所から削除し、安全に保管してください。AI チャットの Discuss モードに問題を貼り付けると、手順が得られます。

認証されていないバックエンド関数

アプリのバックエンドの一部が、利用者を確認せずにデータを渡しているときに表示されます。たとえば、サインインの確認なしにアカウント詳細を返すケースなどです。AI チャットの Discuss モードに問題を貼り付けると、修正の手順が案内されます。

クレジット保護

AI、画像生成、メールなど、アプリのクレジットを使う機能に、アプリの外部から直接アクセスできるときに表示されます。それらを見つけた人が実行し、あなたの連携クレジットを消費するおそれがあります。問題のタイトルは Prevent unauthorized credit usage で、重大度は High です。 問題に表示される内容は、アプリの状態によって異なります:
  • アプリを今のまま保護できる場合: Fix をクリックします。アプリがすでに許可しているアクセスを保ちながら、これらの機能へのアクセスを制限するため、アプリの動作は変わりません。
  • 一部の機能に誤った場所からアクセスできる場合: Resolve with AI をクリックします。これらの呼び出しをアプリのバックエンドに移動し、そこで使用するようにアプリを更新します。影響を受けるフローをテストしてから、スキャンを再実行してください。
  • 公開中のアプリが古い場合: 最新の変更は準備できているのに、公開中のアプリが古いバージョンのままの場合、問題は Publish changes before protecting credits と表示されます。Publish changes をクリックし、スキャンを再実行してください。

アプリの依存関係

アプリで使用しているサードパーティのライブラリやツールに既知のセキュリティ問題があるときに表示されます。各問題には重大度(Critical、High、Medium、Low)と、アップグレードすべき推奨バージョンが含まれます。 脆弱性の修正がまだリリースされておらず、アップグレードできるバージョンがない場合もあります。そのような問題には、バージョンの代わりに Resolve with AI が表示されます。クリックすると、パッケージとその脆弱性が AI チャットに送信され、安全な代替を探して適用します。適用後にスキャンを再実行し、問題が解消したことを確認してください。

コードの脆弱性

スキャンがアプリ自身のコードを分析し、悪用されうるパターンを見つけたときに表示されます。たとえば、アクセスチェックの欠落、ユーザー入力の安全でない処理、適切に保護されていない機密データなどです。各問題には重大度(Critical、High、Medium、Low)と、影響を受けるファイルが表示されます。 問題を展開すると、次の内容に分かれます:
  • 影響: その弱点を使って何ができてしまうか。
  • セキュリティカテゴリ: OWASP Top 10 のカテゴリや CWE 番号など、対応する業界の分類。
  • 証拠: 検出の原因となったコードの部分。
  • 攻撃シナリオ: どのように悪用されうるかの流れ。
  • 推奨修正: 行うべき変更です。対応する準備ができたら展開して確認できます。
コード脆弱性スキャンは Builder プラン以上で利用できます。

セキュリティヘッダーの推奨事項

スキャンがアプリのリスクプロファイルに基づいて推奨する、ブラウザレベルの保護がアプリに不足しているときに表示されます。たとえば、アプリにログインや支払いがある場合、欠けているヘッダーは重大度が高いとして通知されます。各問題には、重大度と、ヘッダーをすぐに有効化する Fix ボタンが表示されます。スキャンを実行しなくても、いつでもこれらのヘッダーを有効化できます。 スキャンが確認するヘッダーは 2 つあります。
  • Block iframe embedding (X-Frame-Options): アプリが他のサイトの iframe 内で表示されるのを防ぎます。アプリ上の何かをユーザーが気付かずにクリックさせられるクリックジャッキング攻撃から保護します。Fix をクリックすると、アプリの埋め込みが No one に設定されます。
  • Restrict unused browser features (Permissions-Policy): カメラ、マイク、位置情報など、アプリがアクセスできるブラウザ機能を制限します。これらを制限すると、不要な場合のアプリの攻撃対象領域を減らせます。
重要:
  • ワークスペースに 埋め込みポリシー がある場合、アプリはそれに従います。埋め込みはより厳しくすることしかできません。
  • 以前に Prevent Embedding をオンにしていた場合、アプリは現在 No one に設定されているため、何も変わっていません。
セキュリティヘッダーを有効化する手順:
  1. アプリエディタで Dashboard をクリックします。
  2. Security をクリックします。
  3. 右上の Advanced Security をクリックします。
  4. Security Headers で、Anyone、Only these sites、No one のいずれかを選び、Restrict Browser Features をオンまたはオフにします。
Advanced Security Settings のスクリーンショット。Anyone、Only these sites、No one の埋め込みオプションが囲まれている

Advanced Security Settings in Base44


よくある質問

アプリを初めて公開する前と、新しいデータテーブルの追加、権限の更新、新しい連携の接続など、大きな変更を行うたびに実行してください。Security タブには、スキャン結果が最新でなくなったときに古いと警告が表示されるため、再実行のタイミングが分かります。
サードパーティサービスへのリクエストはすべてバックエンド関数で扱い、API キーはシークレット管理で保管してください。これによりアプリの訪問者から見つけられる場所に認証情報を置かないようにできます。
すべてのデータテーブルとプライベートアプリは暗号化されます。ただし、データはエンドツーエンドで暗号化されてはおらず、必要に応じて Base44 の管理者がデータにアクセスできます。
このページは AI によって翻訳されました。最も正確で最新の情報については、英語版 を参照してください。