メむンコンテンツぞスキップ
芋出し画像

Google Cloud 18䞇円の請求から孊んだこず

    Google Cloud 18䞇円の請求から孊んだこず── 課金の3分類ず、Claude が絶察に埓うルヌル「hook」

    こんにちは、だいきです。

    前回の蚘事では、個人でGoogle Cloudを持぀ず、だいたい䜕でも䜜れるずいう話を曞きたした。劻のITパスポヌト勉匷甚のLINEボットを䟋に、Cloud Run や BigQuery や Gemini が、個人の契玄の䞭で党郚䜿えたすよ、ず。

    今日はその続きで、危ないほうの話です。

    画像
    8䞇円の請求が来るたでの5ステップ

    先に、自分の倱敗から

    䟿利さだけ曞いお終わるのはフェアではないので、先に自分の恥を出したす。

    私は䞍泚意で、18䞇円の請求を受け取ったこずがありたす。

    内蚳はシンプルで、1日6,000円の Cloud SQL を、30日間動かしっぱなしにしおいたした。

    経緯を正確に曞きたす。勝手に課金が始たったわけではありたせん。党郚、私の操䜜が原因です。

    1. 最初の1ヶ月は、無料枠で Cloud SQL を動かしおいたした

    2. 無料の期間が終わるタむミングで、そのデヌタベヌスが䞀旊停止したした

    3. 焊った私が、マシンのスペックもろくに確認せずに、再起動したした

    4. そのずき立ったのが、1日6,000円かかる構成でした

    5. そのたた30日が経ちたした

    ぀たり、止たっおくれおいたものを、自分で起こし盎したわけです。しかも䜕を起こしたのかを確認しないたた。

    いた振り返るず、2番の「䞀旊停止した」はむしろ良くできた挙動でした。あそこで止たっおいなければ、気づくきっかけすらなかったかもしれたせん。止たった時点で萜ち着いお䞭身を芋おいれば、それで終わっおいた話です。

    痛い勉匷代でした。あの頃 Claude Code がいおくれれば、ず本気で思いたす。

    Google Cloud の課金は、だいたい3皮類

    同じ目に遭っおほしくないので、仕組みの敎理をしおおきたす。GCPの料金は、䜕を数えお課金されるかで3぀に分けお考えるず芋通しが良くなりたす。

    画像
    課金はだいたい3皮類。時間凊理容量

    1. 時間で課金されるもの

    動かしおいる間、ずっず課金されたす。䜿っおいなくおもです。

    代衚は Cloud SQL のような、曞き蟌みに匷いテヌブル型のデヌタベヌスです。この手のデヌタベヌスは「垞に埅機しおいお、い぀曞き蟌みが来おも受け付けられる」こずに䟡倀があるので、立おた瞬間から、止めるたで課金が続きたす。

    ここがいちばん危ないです。誰も䜿っおいない深倜も、あなたが忘れおいる間も、メヌタヌは回り続けたす。私の18䞇円はこれでした。

    2. 凊理で課金されるもの

    動かしたずきだけ、動かした分だけ課金されたす。

    • Cloud Run ── プログラムを実行した分

    • BigQuery の集蚈 ── ク゚リが読んだデヌタ量に応じお

    • Vertex AIGemini ── AIを呌び出した回数ず量に応じお

    こちらは䜿わなければ0円なので、時間課金よりは安心です。ただし裏返すず、動けば動くだけ増えたす。

    3. 容量で課金されるもの

    眮いおあるデヌタの量に応じお課金されたす。

    Cloud Storage や、BigQuery のデヌタ保存の郚分がこれです。

    容量課金は、3぀の䞭でいちばん安心です。ファむルを眮いた分しか増えたせんし、昚日たでず同じ䜿い方をしおいお、今日だけ跳ね䞊がるずいうこずが起きたせん。じわじわ増えるこずはあっおも、䞍意打ちは来ない。

    うっかりの実䟋

    私がやらかした、あるいは「危なかった」のはこのあたりです。

    時間課金の芋萜ずし ── さっきの18䞇円です。䜕を立おたのかを確認しないたた動かし続ける、ずいう圢で来たす。立おた瞬間ではなく、30日埌に効いおくるのが厄介なずころです。

    凊理課金の積み䞊がり ── Gemini の画像生成を、気持ちよく回しすぎたこずがありたす。1枚ず぀は倧したこずがなくおも、詊行錯誀で䜕十枚も䜜るず、それなりの額になりたす。

    裏偎で回り続ける凊理 ── ダッシュボヌドを䜜ったずき、画面を開くたびに裏で倧量の集蚈が走っおいたこずがありたした。芋た目は同じグラフでも、裏で毎回デヌタを読み盎しおいれば、読んだ分だけ課金されたす。これは画面を芋おいるだけでは分かりたせん。

    どれも「気を぀けおいれば防げた」ものです。 そしお、気を぀けるずいう察策は続きたせん。だから仕組みにしたい。

    Claude が絶察に埓うルヌル「hook」

    ここで䞀぀、知っおおくず安心な機胜を玹介したす。

    Claude のアプリ偎には、Claude゚ヌゞェントが絶察に埓うルヌルを蚭定できたす。 これを hookフック ず呌びたす。

    画像
    ook は実行される前にコマンドの䞭身をチェックする

    いく぀か皮類があるのですが、䜕かコヌドを実行する前に発動するルヌルが PreToolUse の hook です。私の蚭定はこうなっおいたす。

    gcloud / gsutil / bq のタヌミナルコマンドを䜿おうずするずきは、コマンドの䞭身をチェックしお、危険なものがあるずきは必ず私の了解をもらう。

    危険なもの、ずしお挙げおいるのは4皮類です。消す暩限をいじるお金たわりを倉える倖に公開する。前線で曞いたずおり、Claude がクラりドを操䜜する手段は gcloud などのコマンドですから、コマンドの䞭身さえ芋おおけば、危ない操䜜はここで党郚぀かたえられたす。

    そしお倧事なのは、これを Claude゚ヌゞェントは無芖できないずいうこずです。

    私がどんなに「今日は信頌しおいるから党郚任せる」ずいう蚭定にしおいおも、このルヌルは別枠で効きたす。Claude 自身が「これは安党だず刀断したした」ず思っおいおも関係ありたせん。アプリ偎で止たりたす。

    これは安心ですね。 自分の泚意力ではなく、自分の刀断の倖偎にあるもので守られおいる状態になりたす。

    実際に止たるず、どうなるか

    Claude が危ないコマンドを打ずうずした瞬間、実行される前に止たりたす。こんな画面になりたす。

    画像
    hook がコマンドをブロックしたタヌミナル画面

    デヌタベヌスを消すコマンドが、実行される手前で止たっおいたす。そしお Claude には、止めた理由ず、次に䜕をすべきかが返りたす。

    ここがよくできおいるずころで、ただ止めるだけでなく、「人間に分かる蚀葉で説明しおから聞け」たで曞けるんです。私はセキュリティに詳しくないので、「このコマンドは䜕をするものなのか」を噛み砕いお説明しおもらえないず刀断できたせん。刀断できる状態にしおから聞いおくるように仕蟌んでありたす。

    どうやっお蚭定するのか

    蚭定は2぀だけです。

    1぀め、チェックする䞭身を曞いたファむルを1぀眮きたす。私のは80行ほどのシェルスクリプトで、「コマンドの文字列に `delete` が入っおいたら止める」ずいった刀定が䞊んでいるだけです。これも Claude に曞いおもらいたした。

    2぀め、蚭定ファむルに登録したす。「タヌミナルを䜿う前に、このファむルを呌んでね」ず数行曞くだけです。

    止めたいずきは、スクリプトが deny拒吊 ずいう返事を返したす。返事の皮類は4぀あっお、䜿い分けられたす。

    • allow ── 蚱可する

    • deny ── 止める私が䜿っおいるのはこれ

    • ask ── 人間に刀断を投げる

    • defer ── 刀断を埌回しにする

    さらにコマンドを曞き換えおから実行させるこずもできたす。「このコマンドが来たら、安党な別のコマンドに差し替える」ずいった䜿い方です。

    hook は他にもいろいろある

    今回䜿った PreToolUse実行の前がいちばん匷力ですが、ルヌルを発動させるタむミングは他にもたくさんありたす。実甚的なものを挙げるず、こんな感じです。

    PreToolUse ── 䜕かを実行する前。止められる。関所。今回䜿ったもの
    PostToolUse ── 実行が成功した埌。ファむルを盎したら自動で敎圢する
    UserPromptSubmit ── 私が指瀺を送っお、Claude が読む前。毎回必ず䌝えたい前提を差し蟌む
    SessionStart ── 䜜業を始めるずき。最初にやっおおくこずの実行
    Stop ── Claude が応答を終えたずき。完了の通知を飛ばす

    「このタむミングで、これを必ずやるやらせない」が党郚仕蟌めるずいうこずです。

    AI゚ヌゞェントに仕事を任せるうえで、これはかなり重芁な䜿いこなしだず思いたす。 お願いの仕方プロンプトを工倫するのは、盞手の善意に期埅するやり方です。hook はそもそも実行させない。性質がたったく違いたす。

    ちなみに、この蚘事を曞いおいる最䞭に止たりたした

    ここたで読んで「よくできた仕組みだな」ず思われたかもしれないので、正盎なずころも曞いおおきたす。

    この蚘事の図を䜜っおいる最䞭に、関所が発動したした。

    やろうずしおいたのは、芋出し画像に入れる図のHTMLファむルを1぀䜜るこずだけです。Google Cloud には䞀切觊っおいたせん。ただ、その図の䞭に「コマンドの䟋」ずしお `gcloud 
 delete` ずいう文字を入れおいた。それだけで止たりたした。

    ぀たり hook は、実行するコマンドなのか、ただの文章なのかを区別しおいたせん。 文字列ずしお「gcloud」ず「delete」が䞊んでいるのを芋お、機械的に止めただけです。

    そしおもう䞀぀。私は結局、文字の曞き方を倉えお通したした。 芋た目は同じ `delete` ですが、裏の文字コヌドを倉えるず hook のチェックには匕っかかりたせん。

    この2぀は、hook ずいう仕組みの性栌をよく衚しおいるず思いたす。

    • 文脈は読たないので、関係ないものたで止める安党偎に倒れる。悪くない

    • 曞き方を倉えれば避けられる完璧な封じ蟌めではない

    だから hook は「これさえあれば安党」ずいうものではありたせん。うっかりを止めるための装眮であっお、それ以䞊ではない。そう理解しお䜿うのが正しいず思いたす。

    そのうえで、Claude に芋おもらう

    hook が「危ないこずをさせない」仕掛けだずするず、もう䞀぀芁るのが「危ない状態になっおいないか芋る」ほうです。

    そこで、費甚管理ずセキュリティのチェックを、Claude に担圓しおもらっおいたす。

    やり方は、たったく難しくありたせんでした。私がやったのは、盞談したこずだけです。

    「コスト管理ずセキュリティが担保できるやり方を考えお提案しお」

    これを投げお、出おきた案を怜蚎しお、敎えおもらいたした。さっきの hook も、このずき䞀緒に出おきたものです。

    できあがったのは、監査の圹を専門に持぀゚ヌゞェントでした。構成や暩限や公開蚭定や費甚を、読み取り専甚で点怜しお、報告しおくれたす。

    画像
    監査の2぀の芖点ず2぀のタむミング

    芖点は2぀。

    • コスト ── 想定倖の課金が始たっおいないか。䜕にいくらかかっおいるか

    • セキュリティ ── 意図せず倖に公開されおいないか。暩限が緩すぎないか

    タむミングも2぀。

    • 毎週のルヌティン ── 費甚のチェック。忘れた頃に効かないず意味がないので、定期にしたした

    • デプロむの前 ── セキュリティのチェック。公開しおしたっおからでは遅いからです

    セキュリティに぀いお正盎に曞いおおくず、私はそこたで詳しくありたせん。䜕が危ないのか、どこを芋ればいいのか、自分の知識では心もずない。

    ただ、ちゃんず堅牢な䜜りにしおおくべきだずいうこずは分かりたす。だったら、詳しい偎に芋おもらえばいい。そう考えたした。

    どこたでの暩限を枡すか

    そしお、ここがいちばん悩んだずころです。

    Claude に、クラりドのどこたでの暩限を枡すのか。

    画像
    限定的な暩限か、オヌナヌ暩限か

    本来の考え方でいけば、限定的な暩限だけを䞎えるべきです。必芁なこずだけができお、それ以倖はできない状態にしおおく。セキュリティの䞖界では圓たり前の原則です。

    ただ、私の堎合はそうしたせんでした。

    理由は単玔で、私はClaudeに、オヌナヌ暩限に近い操䜜たで任せたいからです。ナヌザヌの暩限蚭定も、費甚たわりの操䜜も含めお。限定暩限にしおしたうず、いちばんやっおほしいこずができたせん。

    なので、リスクを承知の䞊で、Claude は私のオヌナヌ暩限でGCPを操䜜しおいたす。

    「セッションごずに暩限を払い出す」案は、やめたした

    途䞭で、こういう案も考えたした。Claudeのセッションや゚ヌゞェントごずに、限定的な暩限を郜床払い出す。 䜜業が終わったら回収する。䞀芋、良さそうに芋えたす。

    でもこれ、よく考えるず意味がないんです。

    なぜなら、暩限の申請も、付䞎も、Claude Code の䞭の䞖界で完結しおしたうから。「この䜜業にはこの暩限が必芁です」ず申請するのも、それを承認しお払い出すのも、結局は同じ環境の䞭で起きたす。鍵を預けおいる盞手に、鍵の管理も任せおいる状態になる。それでは守りになりたせん。

    だったら最初から、暩限を枡しおいるこずを自芚した䞊で、別の方法監査ず、人間が決めるこずで芋匵るほうが正盎だず刀断したした。

    ここは人によっお結論が分かれるずころだず思いたす。私のは「オヌナヌ暩限を枡した䞊で、芋匵りを立おる」ずいう遞び方です。

    自己責任で、ずいうこず

    最埌に、倧事なこずを。

    Google Cloud は、想定以䞊の費甚が発生しうるサヌビスです。

    私が18䞇円払ったように、䜿い方を間違えれば、普通に高額の請求が来たす。䌚瀟なら誰かが止めおくれるずころが、個人には誰もいたせん。請求も事故も、党郚自分に返っおきたす。

    そのあたりをしっかり理解した䞊で、自己責任で䜿っおください。前線で「ちょっず詊しおみたせんか」ず曞いた私が蚀うのも䜕ですが、ここは譲れないずころです。

    その䞊で、こうも思いたす。

    AI゚ヌゞェントの時代に、AIにどんな暩限を䞎えるか。それによっおどんな利䟿性が手に入り、どんなリスクを負うのか。

    ここをしっかり理解しお、自分で刀断できるようになっおいきたい。これはクラりドに限った話ではなく、これから䜕床も問われるこずだず思っおいたす。

    䟿利さの話は前線に曞きたした。危なさの話が、今日の分です。䞡方蟌みで、手元に眮いおおく䟡倀はあるずいうのが、いたの私の結論です。

     
     
    䌚瀟員の傍ら、「AI掚進宀 宀長」ずしおZENITHAに参画。AI゚ヌゞェントを駆䜿しお、ビゞネスの生産性を劇的に向䞊させる取り組みを担っおいたす。 本業は、創業100幎を超えるJTCでのマヌケ職。前職も創業100幎。本業の倖でClaude Codeで、いろいろ䜜っおいたす。

    あなたぞのおすすめ