訂正
2018/08/01 時点 Twitter Application Managementの設定が変更(APIの仕様変更)になったため、 2018/5/30に書いた当ページの方法では動作しなくなりました。
※Enable Callback Lockingの設定がなくなりました。
対処方法
Twitter Application Managementの設定 「Callback URLs」に「http://localhost:xxxxx/signin-twitter」を設定。※xxxxxは動作環境のポート番号
もともとの設定でCallback URLsに設定してた値のミスが原因でした。
Enable Callback Lockingの設定関係なく、正しくCallback URLs指定してれば発生しない問題です。orz
概要
ASP.Net Identityの基本認証を使用しTwitterアカウントでの認証を実装しようとしたところ、「応答の状態コードは成功を示していません: 403 (Forbidden)。」が発生し、軽くはまってしまったので、対象方法メモ。
前提条件
環境
- Visual Studio 2015
- .Net Framework 4.6.1
- ASP.NET MVC 5
状況
- 新規にWEBプロジェクトを作成(ASP.NET MVC指定。認証は個別のユーザーを指定)
- Twitter Application Management の設定を行う。
- ASP.Net Identity でTwitterの認証を有効にする。※
- WEBサイト起動し、ログイン→Twitterをクリックする。
- エラーが発生
※手順1~3の詳細は割愛。
※「検証プロシージャによると、リモート証明書は無効です」エラーが発生する場合は下記サイトの対応を実施
https://stackoverflow.com/questions/25011890/owin-twitter-login-the-remote-certificate-is-invalid-according-to-the-validati
対応方法
Twitter Application Management の設定で
Settings -> [Enable Callback Locking]のチェックを外す。
- ※2018/05/30 デフォルトはチェックありでした。
その他
チェック外していいのか、って所がよくわかってません。
どんなパターンで問題になるんだろ。。