Middle+
Como garantir o acesso seguro ao token de autorização para outra aplicação?
sobes.tech IA
Resposta da IA
As formas mais seguras:
- Utilização do AccountManager. Permite gerir centralizadamente as contas e tokens. Apenas a sua aplicação e outras aplicações autorizadas podem aceder ao token após a confirmação do utilizador.
- Utilização de ContentProvider com permissões adequadas. Você fornece acesso ao token através do ContentProvider, controlando quem pode ler os dados.
- Utilização de IPC (Binder) com verificação da assinatura do pacote. Você implementa o seu próprio serviço que fornece o token, mas o serviço verifica se a aplicação que faz a chamada está assinada com a mesma chave que a sua.
<!-- Exemplo de permissão para ContentProvider -->
<permission
android:name="com.example.myapp.READ_TOKEN"
android:protectionLevel="signature"/>
<provider
android:name=".TokenProvider"
android:authorities="com.example.myapp.tokenprovider"
android:readPermission="com.example.myapp.READ_TOKEN"
android:exported="true"/>
Formas inseguras (a evitar):
- Armazenar o token em SharedPreferences sem encriptação.
- Transmitir o token através de intents sem verificar o remetente.
- Armazenar o token em ficheiros num diretório público.