森ソフトの Web サイトは hugo で作ってます。で、問い合わせページは Formspree というサービスを利用していて、無料(上限 50 件)でフォームを利用できるのですが、このとき、Google の reCAPTCHA を有効にして、スパムから(ある程度)保護することができます。最初に設定したときの記事は下記ですね。
で、先日、 Google から reCAPTCHA に関するメールが来てました。
こんな感じで始まるメールで、機械翻訳の力を借りて読んだのを要約すると、
- reCAPCTHA を 2025 年末までに Google Cloud のプロジェクトと紐づけるよ
- ほっといても自動で作業するし、特に変更は不要
- でも、可能なら自分でやっといたほうがいいよ
ということのようです。
ま、そんなわけでこの Google Cloud プロジェクトと紐づけるというのをやってみたので、その際の作業をメモっておきます。
背景について
いきなりメールが来てたのですが、いつからこういうことが始まったんだろうか?と思って調べてみると、すぐにいろいろな記事が見つかりました。
- reCAPTCHA完全に理解した #GoogleCloud - Qiita
- 【2024/08/01〜】Google reCAPTCHA 価格改定が施行
- Google reCAPTCHAから価格改定のお知らせメールが届く(無料だと思ってたけど) – タスクマザー
どうも 2024年8月 に価格改定があって、その前に連絡通知があったようです。過去のメールを見てみましたが、なぜか来てなかったですね。どこかに紛れこんだんだろうか?
この価格改定に際して、プランもいろいろと変わったようです。今までの reCAPTCHA は reCAPTCHA Classic と呼ばれるものになったようです。ついでに、 reCAPTCHA 自体の無料枠の件数も大幅に減ってます(新しい reCAPTCHA Essentials と同じ月 10000 件)。まあ、大してアクセス数のない個人ページなので、変更後でも十分無料範囲内でやっていけるので、引き続き使おうとは思いますが。
ま、そんなことがあったということを眺めながら対応作業やっておきます。手順は難しくなくて、下記に載ってるので、これに従うだけです。
reCAPTCHA Classic から移行する | reCAPTCHA Enterprise | Google Cloud
移行後は reCAPTCHA Essentials になるという扱いになるのかな?Google のドキュメントには明確に書かれてないっぽいですが、なんとなくそれっぽい印象です。
Google Cloud プロジェクトとの紐づけ
既に、 Google Cloud プロジェクトを運用しているアカウントがあるので、そちらでコンソールにログインします。
最初に、 reCAPTCHA 用に新しいプロジェクトを作成します。既存のプロジェクトを利用する場合は不要ですね。
次に、このプロジェクトに課金情報を紐づけようと思ったのですが、既に別のプロジェクトの支払の関係で、支払アカウントと紐づいているためか、最初から課金が有効になってました。
次に、Google Cloud コンソールで、 reCAPTCHA Enterprise API ページを開きます。まず、サイドメニューの『APIとサービス』->『有効なAPIとサービス』を選択します。
次に、『APIとサービスを有効にする』をクリックします。
API の検索画面が表示されるので、
『recaptcha』と入力すると、『recaptcha enterprise api』が候補に出てくるので、選択すると、
のように表示されるのでこれをクリックします。ここで『有効にする』が表示されるので、これをクリックします。
(上記はボタンクリック後の処理中の画面です)
処理が無事に完了して、
こんな感じの画面が表示されれば OK です。
reCAPTCHA Classic からの移行
次に、Google Cloud コンソールのサイドメニューから『セキュリティ』->『reCAPTCHA』を選択して、 reCAPTCHA ページを開きます。
画面の下の方へスクロールすると、
こんな感じに reCAPTCHA Classic のキーが表示されています。
これは、 reCAPTCHA 管理コンソール で管理しているキー
になっています。ただし、ここに表示されるには、対象としたい reCAPTCHA の管理コンソールのユーザーが、この Google Cloud プロジェクを操作しているユーザーアカウントとしての権限を持っている必要があるそうです(詳細はこちらを参照してください)。今回の場合は、どちらも同じ Google アカウントであり、共に管理者なので問題なく表示されていました。
ということで、移行したいキーを選択して、『キーをアップグレード』を選択します。
確認ダイアログが表示されるので、問題がなければ、『確認』をクリックします。
問題がなければ、このような画面が表示されて移行が完了します。
あとは、必要なキーの分だけ上記の作業を行っておきます。
テスト
Google Cloud コンソール上でキーが移行されたことが確認出来たら、実際に問い合わせページのフォームを表示して、
メッセージを送信すると、問題なく送れました。テスト後しばらくすると、 Google Cloud コンソールの『reCAPTCHA』が画面でも、
ステータスが『保護」になっていることがわかります。とりあえずこれで OK そうですね。
おまけ
移行後も、 reCAPTCHA の管理コンソールは使えますが、
こんな感じに、 Google Cloud でキーを管理していることがわかるようにアイコンが追加されてました。