IFTTTとFirebaseの連携で認証を追加

先日 PS4 をGoogle Home から操作できるように設定を行いました。
しかし、Firebase のプロジェクトの読み書きが自由に行える状態のため、Webhook で実行している URL が第三者にバレてしまうと、誰でもアクセスできてしまいます。
セキュリティ的にも良くないので、ひとまず認証を追加しました。
今回追加した設定は firebase 的にはレガシーとなっていますが、何もセキュリティ対策が無いよりはあったほうが良いでしょう。
設定自体は数分で完了しました。
Firebase のシークレットを確認
- Firebase にアクセス
- [歯車]-[プロジェクトの設定] をクリック
![[歯車]-[プロジェクトの設定] をクリック](data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%20392%20142%22%3E%3C/svg%3E)
- 初めてアクセスすると利用規約が表示されるため [同意する] をクリック
![初めてアクセスすると利用規約が表示されるため [同意する] をクリック](data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%20416%20253%22%3E%3C/svg%3E)
- [サービスアカウント] タブをクリック
![[サービスアカウント] タブをクリック](data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%20531%2059%22%3E%3C/svg%3E)
- [データベースのシークレット] をクリックしてシークレットコードを確認
![[データベースのシークレット] をクリックしてシークレットコードを確認](data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%20533%20259%22%3E%3C/svg%3E)
データベースのルールを変更
- [データベース]-[ルール] をクリックして、以下のようにルールを書き換える
{
“rules”: {
“.read”: false,
“.write”: false,“googlehome”: {
“.read”: true,
“.write”: true,
“words”: {
“.validate”: “(auth != null || newData.val() === ”)”
}
}
}
}
IFTTT のアプレットに認証コードを追加
- IFTTT のマイアプレットへアクセス
- 認証を追加するアプレットの [歯車] をクリック
![認証を追加するアプレットの [歯車] をクリック](data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%20285%20323%22%3E%3C/svg%3E)
- [URL] に記載されているアドレスの最後に以下を追加
※[シークレット] は Firebase の設定で確認したシークレットです。
?auth=[シークレット]
![[URL] に記載されているアドレスの最後に以下を追加](https://584homes.com/wp-content/uploads/2018/03/2018-03-07_18_35_58000000.jpg)
1~2分後に確認したところ、問題なく動作しました。
あまり早すぎると IFTTT 側の認証設定が反映されていないためか、想定通りに動きませんでした。
その影響でアプリ側もフリーズしてしまったので、OS ごと再起動して直りました。
![[歯車]-[プロジェクトの設定] をクリック](https://584homes.com/wp-content/uploads/2018/03/2018-03-07_18_25_45000000-1.jpg)
![初めてアクセスすると利用規約が表示されるため [同意する] をクリック](https://584homes.com/wp-content/uploads/2018/03/2018-03-07_18_26_02000000.jpg)
![[サービスアカウント] タブをクリック](https://584homes.com/wp-content/uploads/2018/03/2018-03-07_18_31_08000000.jpg)
![認証を追加するアプレットの [歯車] をクリック](https://584homes.com/wp-content/uploads/2018/03/2018-03-07_18_32_11000000.jpg)
コメントを書く