Saltar para conteúdo


Foto
- - - - -

Best Practices for Handling Data


  • Por favor inicie sessão para responder
1 resposta a este tópico

#1 sismeiro

sismeiro

    Mestre de Android

  • Former Staff
  • PipPipPipPipPipPip
  • 3369 mensagens

Mensagem publicada 06 August 2010 - 07:23

Aqui fica este conteúdo teórico do blog de developers da Android sobre as melhores práticas para tratar dados dos utilizadores:http://android-developers.blogspot.com/2010/08/best-practices-for-handling-android.htmlNota: O DPontes traduziu o artigo que se encontra no post em baixo. Obrigado DPontes.
  • Kelorance gosta disto

#2 DPontes

DPontes

    Fã de Android

  • Former Staff
  • PipPipPip
  • 464 mensagens

Mensagem publicada 08 August 2010 - 17:33

Melhores práticas de uso da informação dos utilizadores Android(Este artigo foi criado por Nick Kralevich, um engenheiro da Android Security Team. Pode encontrar o artigo original em inglês aqui)À medida que o uso de aplicações móveis cresce, os utilizadores estão a prestar cada vez mais atenção a como estas aplicações utilizam os seus dados. Enquanto que a plataforma Android contém permissões extensivas criadas para proteger os utilizadores, os criadores das aplicações são, em último caso, os responsáveis pela manipulação da informação dos utilizadores. É importante que os programadores compreendam o código que incluem, e tenham em consideração as permissões que requisitam, já que lidar incorrectamente com estes assuntos pode resultar numa percepção de violação de confiança por parte dos utilizadores.Manter um ecosistema saudável e fidedigno está no interesse de todos os criadores de aplicações Android.Aqui ficam algumas dicas para escrever aplicações Android de confiança:1. Manter uma política de privacidade2. Minimizar permissões3. Dar aos utilizadores escolhas relativamente à retenção de informação4. Não guardar informação desnecessária5. Não enviar informação para fora do dispositivo6. ... mas se for realmente necessário, usar encriptação e minimização da informação7. Não utilizar código que não compreende8. Não guardar informação específica do dispositivo ou do utilizador.Manter uma Política de PrivacidadeAplicações fidedignas são transparentes acerca dos dados que retêm e as razões para o seu uso. Na generalidade, os utilizadores partilham informação através de tais aplicações se acreditarem que iram lucrar pessoalmente. Uma política de privacidade clara e concisa, com detalhes acerca do tipo de informação retida e como é utilizada, dá um grande passo em direcção à criação de confiança e boa vontade.

Imagem colocada

Minimizar permissõesO Android é único entre os sistemas operativos móveis pelo seu sistema de permissões simples, directo e executado pelo sistema operativo. Todas as aplicações Android devem declarar as permissões requisitadas, e os utilizadores deverão aprovar estas permissões antes de a aplicação ser instalada. Os utilizadores tendem a não confiar em aplicações que requerem permissões excessivas.Por exemplo, um utilizador que instale este jogo do Galo poderá perguntar-se o porquê de este necessitar de tirar fotografias.

Imagem colocada

Dar ao utilizadores escolhas relativamente à retenção de informaçãoÉ chamado de Paradoxo de Privacidade [PDF, 890K]. Os utilizadores partilham de bom grado a sua informação, mas querem controlo sobre essa partilha. Aplicações fidedignas dão aos utilizadores controlo sobre a sua informação. Por exemplo, o browser do Android tem configurações de privacidade que permitem aos utilizadores controlar como a sua informação é partilhada.

Imagem colocada

Não guardar informação desnecessáriaAplicações fidedignas limitam o tipo de dados que recolhem. Recolher informação desnecessária, especialmente se nunca é utilizada, é um convite à suspeitação. Quando em dúvida, não a guarde.Não enviar informação para fora do dispositivoSe for necessário manipular dados do utilizador, verifique que estes permanecem no aparelho sempre que possível. Os utilizadores sentem-se confortáveis ao saber que a sua informação privada reside apenas no seu telemóvel. Enviar a informação para fora do telemóvel, mesmo sendo para benefício do utilizador, tende a atrair desconfiança.... mas se for necessário, usar encriptação e minimização da informaçãoPor vezes, a recolha de informação é necessária. Nesse caso, as aplicações necessitam de se assegurar que é manipulada de um modo seguro. Uma política de privacidade irá evitar conduzir a utilizadores surpresos e irritados; em alguns casos, pode ser aconselhável perguntar ao utilizador antes de transmitir informação para fora do dispositivo.Primeiro, minimize a quantidade de informação que é recolhida. É realmente necessário o número de telefone completo do utilizador, ou o código de área seria suficiente? Pode ser usada uma função hash criptográfica de sentido único na informação antes de a enviar para o servidor de modo a proteger a informação confidencial do utilizador?---------------------------- Um caso de estudo: os Favoritos Suponha-se que se pretende que a aplicação mantenha uma listagem de "Favoritos" de cada um dos seus utilizadores, sem ter de passar por um processo de registo completo. Em teoria, é possível realizar isto enviando para o servidor alguma combinação do número de telefone, identificação do aparelho, ou identificação do SIM do utilizador. Mas porquê correr o risco de preocupar as pessoas com questões de privacidade; porque não utilizar uma assinatura hash de sentido único da informação identificadora? Ou ainda melhor, criar uma identificação aleatória única e guardá-la no telemóvel, e usar esta identificação única como chave de registo para a sua aplicação. No final, ainda é possível obter os favoritos dos utilizadores, mas não será necessário enviar ou guardar nenhuma informação sensível.----------------------------Segundo, a encriptação é crítica para a manipulação segura da informação dos utilizadores. Os telemóveis normalmente operam em redes não confiáveis onde "attackers" podem "snifar" tráfego confidencial. Encriptar informação em movimento é uma parte crítica para proteger a informação do utilizador.Finalmente, em comunicação com um servidor através de HTTP, é uma boa ideia evitar codificar a informação do utilizador no URL que é usado com o HTTP GET; em vez disso, fazer POST dessa informação no corpo da mensagem. Enquanto que usar POST não garante que a informação não será "snifada", colocá-la no URL aumenta a probabilidade de que será automaticamente catalogada; por defeito, a maioria dos softwares dos servidores de rede catalogam todos os URLs que são recebidos.Não utilize código que não compreendeNo ambiente de código aberto Android, é prática comum (e favorável) depender fortemente no código de outros programadores, na forma de livrarias e frameworks. Mas se esse código estiver a lidar com a informação dos utilizadores inapropriadamente, o problema é vosso. Por isso é bom verificar bem o código antes de o aplicar.Não catalogar informação específica ao utilizador ou aparelhoCriadores de aplicações deverão ser cuidadosos acerca de catalogações no aparelho. O ambiente Android facilita a escrita do registo do telemóvel, e qualquer um que tenha olhado para um output de "logcat" sabe que está cheio de informação de debbuging importante mas aparentemente aleatória de muitas aplicações. No Android, os registos são um recurso partilhado, e disponível para qualquer aplicação com a permissão READ_LOGS (apenas com a permissão do utilizador, obviamente!). Apesar de os registos do telemóvel serem temporários e apagados no reboot, catalogação imprópria da informação dos utilizadores pode inadvertidamente passar informação dos utilizadores para outras aplicações