
「Claude Codeでアプリを作ったんですが、これ、公開して大丈夫でしょうか」
AI専門会社・合同会社あとらくしょん代表の長 純(ちょう じゅん)です。最近、このようなご相談をいただくことが増えました。
数年前まで、アプリ開発は専門の会社に頼むものでした。それが今では、経営者や現場の担当者が、自分の手でアプリを作れるようになっています。中小企業にとって、これは大きなチャンスです。
ただ、ご相談を受けて中身を拝見すると、多くのアプリに共通する問題があります。この記事では、AIでアプリを作るときに抜け落ちやすい「守り」の部分と、今日からできる対策を、元金融系システムエンジニアの視点からお伝えします。
「頼んだ機能」は完璧、「頼まなかった安全」は空っぽ
ご相談いただくアプリの多くは、画面も機能もよくできています。頼んだことは、きちんと形になっている。
一方で、頼んでいない部分、つまり「安全」が手薄なケースが少なくありません。
理由はシンプルです。AIは、指示されたことを実現するのが得意です。「顧客リストを管理したい」「予約を受け付けたい」といった機能は、誰もが言葉にします。しかし「第三者に見られないようにして」「鍵を外に漏らさないで」と言葉にする人は、ほとんどいません。
言葉にされない要件は、どうしても後回しになります。AIが悪いのではありません。「そこも守って」と、誰も頼んでいないだけなのです。
実際によくある3つの落とし穴
1. APIキーがコードに書き込まれている
APIキーとは、外部サービスを使うための「鍵」です。チャットにそのまま貼り付けて作業を頼むと、コードの中に直接書き込まれてしまうことがあります。
そのコードをGitHubなどで公開すれば、鍵も一緒に公開されます。第三者に不正利用されれば、高額な利用料の請求や情報漏えいにつながりかねません。鍵は環境変数(.envファイルなど)に分けて管理し、公開する場所には含めないのが基本です。
2. データベースに「鍵」がかかっていない
ログインすれば、他の人のデータまで見えてしまう。画面には表示されていなくても、仕組みを知っている人なら直接データを取り出せてしまう。そんな状態のまま公開されているケースがあります。
「本人のデータは本人だけが見られる」という制限は、画面側ではなく、データベース側でかけておく必要があります。たとえばSupabaseであれば、Row Level Securityという機能がこれにあたります。
3. 存在しない「パッケージ」をインストールしている
パッケージとは、アプリに組み込む既製の部品のことです。AIは、実在しない部品の名前を、もっともらしく提案してしまうことがあります。この現象は、2025年に米国のセキュリティ学会(USENIX Security)で発表された研究でも、大規模に確認されています。
さらに、AIが提案しがちな名前を先回りして、偽の部品を登録しておく手口も報告されています。部品を追加する前に、公式の配布元で実在や利用実績を確かめる習慣が欠かせません。
金融の現場では、セキュリティは「最初に約束する前提」だった
私は福祉の仕事に入る前、金融と通信のシステムエンジニアとして10年働いていました。
金融の現場では、「動くコード」は当たり前です。そこから先の「壊されないか」「漏れないか」に、時間の大半を使います。セキュリティは最後に付け足す工程ではなく、要件を決める段階で約束しておく前提でした。
現在は、AI専門会社の代表として、また合同会社あっぷっぷの副代表兼CAIOとして関わる放課後等デイサービスで、Claude Codeを使った支援記録や業務ツールづくりにも取り組んでいます。扱うのは、こどもと家族の個人情報です。だからこそ、あの10年で身につけた感覚が、そのまま生きています。
経営者の方に知っておいていただきたいのは、AIが書いたコードであっても、情報が漏れたときに責任を負うのは事業者だということです。個人情報保護法では、一定の漏えいが起きた場合、個人情報保護委員会への報告と本人への通知が求められます。「AIが作ったので」は、理由になりません。
対策は「最初に頼んでおく」こと
Claude Codeで作る方に、ひとつだけお伝えしたいことがあります。
「動いた」を「完成」と呼ばないでください。
そのかわり、最初に頼んでおきましょう。Claude Codeには、プロジェクトのルールを書いておく「CLAUDE.md」というファイルがあります。作業を始めるときに読み込まれる、AIへの指示書のようなものです。ここに次のように書いておくだけで、AIの振る舞いは変わります。
## セキュリティのルール
- APIキーやパスワードなどの秘密情報は、コードに直接書かない
- データベースには必ずアクセス制限をかける
- パッケージを追加する前に、実在するかを確認する
- 公開前に、攻撃者の視点でこのアプリの弱点を洗い出す
AIは、頼まれた安全にはきちんと応えてくれます。頼むのは、人の仕事です。
もちろん、AIによる確認も万能ではありません。個人情報や決済を扱うアプリは、公開前に一度、専門家の目を入れることをおすすめします。
まとめ
動くアプリは、AIが作ってくれる時代になりました。しかし安全なアプリは、まだ、こちらが頼まないと生まれません。
- 秘密情報をコードに書かない
- データベースに必ず鍵をかける
- パッケージは実在を確かめてから使う
そして、これらを最初にルールとして書いておく。それだけで、AIで作るアプリの安全性は大きく変わります。
合同会社あとらくしょんでは、Claude Codeを活用した業務アプリ開発や、公開前のセキュリティ確認についてのご相談を承っています。社内でAIを安全に使うための研修も行っており、人材開発支援助成金の活用についてもご相談いただけます。「うちのアプリ、大丈夫かな」と感じた方は、お問い合わせフォームからお気軽にご連絡ください。
Claude Codeの導入から業務での活用までは、拙著『Claude Codeに仕事を任せる技術』(Kindle)でも、プログラミング経験のない方に向けてまとめています。
参考:Spracklen ほか「We Have a Package for You! A Comprehensive Analysis of Package Hallucinations by Code Generating LLMs」(USENIX Security 2025)
