OAuth2を使用してネイティブモバイルアプリを作成したいと考えています。 clientIDを盗むのを防ぐ方法(この情報は誰でも入手できます)誰かが独自のアプリを作成し、クライアントIDを使用してアプリとして行動できますか?ネイティブアプリOAuth2承認
1
A
答えて
1
はい、誰かがあなたのclientId/clientSecretを取得した場合、彼はあなたのアプリケーションとして動作でき、悲しいことに、アプリケーションから資格情報を完全に削除する方法はありません。
より高いレベルでは、サービスに認証するための識別子とシークレットが必要です。あなたのアプリからシークレットを削除する場合は、別の場所から取得する必要があります(ユーザーが入力する可能性があります。これは、ユーザーに認証を与え、さらにAPIコールを実行するトークンを与えることと同じです)。
しかし、this articleで説明されているように、リバーサーが資格情報を取得するのを難しくすることができます。 さらに難しくするために、すべてのAPIコールをHTTPSで強制的に実行し、SSL証明書のピン設定を有効にして、Proxy Debugging/Man In The Middleを引き離すことが難しい場合があります。
最終的には、どのAPI呼び出しを公開するべきか(これらのリソースにアクセスするためのOAuthトークンのみで)、ユーザー認証が必要なAPI呼び出しを明確に特定する必要があります。
PS:Googleの(Androidセキュリティのベストプラクティス)[https://developer.android.com/training/best-security.html]は良いスタートになるかもしれません!
関連する問題
- 1. OAuth2承認
- 2. 承認グーグルのOAuth2
- 3. OAuth2ネイティブアプリ - クライアントの秘密
- 4. は/のOAuth2 /エンドポイントOPENAMを承認
- 5. Swashbuckle OAuth2クライアント資格での承認フロー
- 6. yahoo-oauth2 djangoソーシャル認証で承認されません
- 7. Google API OAuth2 - 承認トークンからリフレッシュトークンを取得
- 8. BrowserField2 - 承認/拒否段階でsalesforce oauth2が失敗する
- 9. ServiceStack OAuth2モバイルネイティブ認証
- 10. OAuth2認証jsクライアント
- 11. Spring oauth2認可プロバイダ
- 12. Google OAuth2再承認に同意ページの権限がありません
- 13. Javaコンフィグレーションを使用して承認サーバーエンドポイントのSpring OAuth2式ハンドラメソッドをコンフィグレーションする
- 14. は、サードパーティの承認がある場合にのみ使用されるのOAuth2?
- 15. Google OAuth2ホワイトリスト、リストから承認されていないものを削除
- 16. Spring OAuth2とAngularJSアプリケーションの認証/認可
- 17. Oauth2認証とSpringブート
- 18. 単体テストoAuth2認証コード
- 19. OAuth2帯域外ユーザ認証
- 20. JSPとOAUTH2の認証
- 21. OAuth2:認証コード許可フロー
- 22. 承認
- 23. Java認証・承認
- 24. Windows認証/承認
- 25. スプリングブート1.5.4 oauth2スプリングブート付きリソースサーバー1.2.4 oauth2認証サーバー
- 26. パッケージ "golang.org/x/oauth2"を使用してoauth2で認証する
- 27. Instagramの承認
- 28. ノードサーバコードの承認
- 29. Jenkinsインプロセススクリプト承認
- 30. Instagram API承認
ありがとうございました。 –