Tengo una API web, por ahora usa oauth2 tipo de concesión de código de autorización para comunicarme con mi aplicación nativa. El navegador web se abrirá dentro de la aplicación para ingresar el nombre de usuario y la contraseña, abrir la página de autorización, etc.
Deseo implementar la capacidad de inicio de sesión en la aplicación nativa usando el nombre de usuario y la contraseña sin vista web, ya que es nuestra aplicación nativa oficial. Suena como el tipo de concesión de credenciales de propietario de recursos . Pero obviamente es inseguro porque clientid está disponible junto con la aplicación para todos. Pero veo que funciona (credenciales dentro de la aplicación) para la aplicación oficial de Twitter y otros. Así que supongo que usan alguna lógica de autorización no oauth2 tipo de concesión de credenciales de propietario de recurso para sus aplicaciones nativas oficiales. ¿Algún pensamiento aquí? ¿Cómo construir esta comunicación de forma segura?