

RaisのomniauthでGoogleログインの実装を行っており、ローカル環境では正常に動作しています。  
サーバー環境（CentOS, Nginx）ではGoogleの認証後に以下のようなURLにコールバックされた時、403エラーが表示されてしまいます。

`https://dummy.com/auth/google_oauth2/callback?xxxxxxx&scope=email+https%3A%2F%2Fwww.googleapis.com&xxxxx`

**403 Forbiddenの状況**

[![403
Forbiddenの状況](https://i.stack.imgur.com/kp4bk.png)](https://i.stack.imgur.com/kp4bk.png)

調査を進める中で、omniauthやGoogleログインに関わらず、以下のように「://」を含むURLにアクセスすると、同様のエラーが発生することが分かりました。

（非エンコード）  
`https://dummy.com/?a=https://`  
（エンコード）  
`https://dummy.com/?a=https%3A%2F%2F`

クエリパラメーターに `://`
を含むアクセスを禁止するようなサーバーのセキュリティー関係の設定があるのかなと思っているのですが、思い当たる設定がある方がいたら、教えて頂けませんか。

なお、この問題に関するRailsやNginxのエラーログやアクセスログへの出力はありません。

### 環境

CentOS7  
Nginx  
Rails


CC BY-SA 4.0
2020-06-23T06:04:52.483
67916
2020-07-24T06:14:08.557
2020-06-24T04:26:39.520
3060
12509
question
ruby-on-rails centos nginx security url
RaisのomniauthでGoogleログインのコールバック時に403エラーとなる


調査の結果、AWSのWAFの設定で `://` を含むURLをブロックしていたのが問題でした。


CC BY-SA 4.0
2020-06-24T04:23:21.900
67942
2020-07-24T06:14:08.557
2020-07-24T06:14:08.557
3060
12509
67916
answer