Segurança de software não é o mesmo que software de segurança. Aqui, estamos interessados em tópicos como autenticação, controle de acesso, confidencialidade, criptografia e gestão de privilégios.
<uses-permission .../>
de AndroidManifest.xml declara o uso da permissão ACTIVITY_RECOGNITION
, que permite que um aplicativo reconheça as atividades físicas do usuário.<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
<uses-permission .../>
de AndroidManifest.xml declara o uso da permissão READ_CALENDAR
, que permite que um aplicativo leia os dados de calendário do usuário.<uses-permission android:name="android.permission.READ_CALENDAR"/>Exemplo 2: O elemento
<uses-permission .../>
de AndroidManifest.xml declara o uso da permissão WRITE_CALENDAR
, que permite que um aplicativo escreva nos dados de calendário do usuário.<uses-permission android:name="android.permission.WRITE_CALENDAR"/>
<uses-permission .../>
de AndroidManifest.xml declara o uso da permissão READ_CALL_LOG
, que permite que um aplicativo leia o registro de chamadas do usuário.<uses-permission android:name="android.permission.READ_CALL_LOG"/>Exemplo 2: O elemento
<uses-permission .../>
de AndroidManifest.xml declara o uso da permissão WRITE_CALL_LOG
, que permite que um aplicativo escreva no registro de chamadas do usuário.<uses-permission android:name="android.permission.WRITE_CALL_LOG"/>
<uses-permission .../>
de AndroidManifest.xml declara o uso da permissão CAMERA
, que permite que um aplicativo acesse a câmera do dispositivo.<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission .../>
de AndroidManifest.xml declara o uso da permissão READ_CONTACTS
, que permite que um aplicativo leia os dados de contatos do usuário.<uses-permission android:name="android.permission.READ_CONTACTS"/>Exemplo 2: O elemento
<uses-permission .../>
de AndroidManifest.xml declara o uso da permissão WRITE_CONTACTS
, que permite que um aplicativo escreva nos dados de contatos do usuário.<uses-permission android:name="android.permission.WRITE_CONTACTS"/>Exemplo 3: O elemento
<uses-permission .../>
de AndroidManifest.xml declara o uso da permissão GET_ACCOUNTS
, que permite que um aplicativo acesse o e-mail e as contas on-line do usuário armazenados no Account Manager. É possível acessar dados confidenciais, como IDs de conta, endereços de e-mail e números de telefone, com essa permissão.<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<uses-permission .../>
de AndroidManifest.xml declara o uso da permissão WRITE_EXTERNAL_STORAGE
, que permite que um aplicativo grave em um espaço de armazenamento externo.<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>Exemplo 2:O elemento
<uses-permission .../>
do AndroidManifest.xml declara o uso da permissão READ_EXTERNAL_STORAGE
, que permite que um aplicativo leia de um espaço de armazenamento externo.<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.BRICK"/>
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000, 0, locationListener);
sms.sendTextMessage(recipient, null, message, PendingIntent.getBroadcast(SmsMessaging.this, 0, new Intent(ACTION_SMS_SENT), 0), null);
<uses-permission .../>
de AndroidManifest.xml declara o uso da permissão RECORD_AUDIO
, que permite que um aplicativo grave áudio usando o microfone do dispositivo.<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission .../>
do AndroidManifest.xml declara o uso da permissão BLUETOOTH_ADVERTISE
, que permite que um aplicativo seja anunciado para dispositivos próximos com Bluetooth.<uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE"/>
<uses-permission .../>
do AndroidManifest.xml declara o uso da permissão POST_NOTIFICATIONS
, que permite que um aplicativo envie notificações ao usuário do dispositivo.<uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
<uses-permission .../>
do AndroidManifest.xml declara o uso da permissão READ_MEDIA_AUDIO
, que permite que um aplicativo leia arquivos de música e áudio no dispositivo.<uses-permission android:name="android.permission.READ_MEDIA_AUDIO"/>
<uses-permission .../>
do AndroidManifest.xml declara o uso da permissão READ_MEDIA_VIDEO
, que permite que um aplicativo leia arquivos de vídeo no dispositivo.<uses-permission android:name="android.permission.READ_MEDIA_VIDEO"/>
<uses-permission .../>
de AndroidManifest.xml declara o uso da permissão BODY_SENSORS
, que permite que um aplicativo acesse dados de sensores corporais ou ambientais no dispositivo ou em wearables conectados.<uses-permission android:name="android.permission.BODY_SENSORS"/>
number = tm.getCompleteVoiceMailNumber();
FLAG_GRANT_READ_URI_PERMISSION
e FLAG_GRANT_WRITE_URI_PERMISSION
. Se um programa mal-intencionado for capaz de interceptar essa intenção, ele obterá permissão para ler ou gravar no URI especificado. Esse URI poderá muitas vezes ser mais suscetível a interceptação se a intenção for implícita em vez de explícita.
myIntent.setFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
AUTHID
padronizam para AUTHID DEFINER
.AUTHID DEFINER
ou AUTHID CURRENT_USER
. As funções e procedimentos com os direitos do definidor são executados sob os privilégios do usuário que define o código. Isso pode permitir e o acesso a partes específicas de dados e as respectivas atualizações sem conceder acesso a tabelas ou a esquemas inteiros. Com os direitos do chamador, ou AUTHID CURRENT_USER
, as funções e procedimentos são executados sob os privilégios do usuário que os invoca. Isso não permite a um usuário o acesso a dados aos quais ele ainda não tem acesso. Se nenhuma cláusula AUTHID
for fornecida, a função ou o procedimento padroniza para os direitos do definidor.SYS
ou por outro usuário extremamente privilegiado, fazendo com que quaisquer ataques do código sejam potencialmente mais perigosos.