5.5.2 Правила
При обработке политики конфиденциальности необходимо соблюдать следующие правила:
При использовании данных для передачи на внешний сервер или другую цель, ограничьте передачу данными, необходимыми для предоставления услуги. В частности, вы должны разработать приложение таким образом, чтобы оно могло получать доступ только к этим данным пользователя, и пользователь мог понять их назначение на основе описания приложения.
Например, пользователь может представить себе, что это приложение для оповещения, но не имеющее доступа к данным о местоположении. С другой стороны, если приложение оповещения может отправлять оповещения на основе местоположения пользователя, то оно должно иметь доступ к данным о местоположении, и эта функция должна быть описана в приложении.
Если информация требуется только внутри приложения, избегайте передачи информации вовне и принимайте другие меры для снижения риска непреднамеренной утечки данных пользователей.
Если приложение передаёт данные пользователя, которые трудно изменить или требуют особого внимания, необходимо получить предварительное согласие пользователя перед началом использования приложения. Это согласие должно быть выборочным — уведомить пользователя о том, какие типы информации будут отправляться на сервер и будет ли задействован какой-либо сторонний поставщик. Более конкретно, при первом запуске приложение должно отображать свою политику конфиденциальности и подтверждать, что пользователь прочитал и согласился с ней. Кроме того, каждый раз, когда приложение обновляется и начинает передавать новые типы данных пользователя на внешний сервер, оно должно повторно подтвердить, что пользователь ознакомился и согласен с изменениями. Если пользователь не согласен, приложение должно прекратить работу или принять другие меры, чтобы гарантировать, что все функции, требующие передачи данных, отключены.
Эти шаги гарантируют, что пользователи понимают, как обрабатываются данные при использовании приложения, обеспечивают чувство безопасности и повышают доверие к приложению.
MainActivity.java
protected void onStart() {
super.onStart();
// (некоторые части опущены)
if (privacyPolicyAgreed <= VERSION_TO_SHOW_COMPREHENSIVE_AGREEMENT_ANEW) {
// *** ТОЧКА *** При первом запуске (или обновлении приложения), получите широкое согласие на передачу данных пользователя, которые будут обрабатываться приложением.
// Когда приложение обновляется, необходимо только обновить согласие пользователя, если обновлённое приложение будет обрабатывать новые типы данных пользователя.
ConfirmFragment dialog = ConfirmFragment.newInstance(
R.string.privacyPolicy, R.string.agreePrivacyPolicy,
DIALOG_TYPE_COMPREHENSIVE_AGREEMENT);
dialog.setDialogListener(this);
FragmentManager fragmentManager = getSupportFragmentManager();
dialog.show(fragmentManager, "dialog");
}
Перед передачей любых данных пользователя, требующих особенно тщательной обработки, помимо общего согласия, приложение также должно получить согласие пользователя для каждой категории таких данных (или функций, связанных с передачей данных пользователя). Если пользователь не соглашается, приложение не должно отправлять соответствующие данные на внешний сервер. Это гарантирует, что пользователь сможет более полно понять связь между функциями приложения (и предоставляемыми услугами) и передачей данных пользователя с общим согласием, а также позволяет поставщику основывать свои решения на более точных данных, полученных от согласия пользователя.
MainActivity.java
public void onSendToServer(View view) {
// *** ТОЧКА *** Получите конкретное согласие перед передачей данных пользователя, требующих особо деликатной обработки.
ConfirmFragment dialog = ConfirmFragment.newInstance(R.string.sendLocation, R.string.cofi
rmSendLocation, DIALOG_TYPE_PRE_CONFIRMATION);
dialog.setDialogListener(this);
FragmentManager fragmentManager = getSupportFragmentManager();
dialog.show(fragmentManager, "dialog");
}
Обычно Android Market предоставляет ссылку на политику конфиденциальности приложений, чтобы пользователи могли проверить её перед установкой соответствующего приложения. Помимо поддержки этой функции, приложение также должно предоставлять некоторые методы, позволяющие пользователям просматривать политику конфиденциальности после установки приложения на устройство. Особенно важно предоставить несколько способов, позволяющих пользователям легко проверять политику конфиденциальности. После получения согласия данные пользователя могут быть переданы на внешний сервер для помощи пользователям в принятии соответствующих решений.
MainActivity.java
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_show_pp:
// *** ТОЧКА *** Предоставьте методы, с помощью которых пользователь может просмотреть политику конфиденциальности приложения.
Intent intent = new Intent();
intent.setClass(this, WebViewAssetsActivity.class);
startActivity(intent);
return true;
Размещение сокращённой версии политики конфиденциальности в папке ресурсов является хорошей идеей, поскольку она обеспечивает лёгкий доступ пользователей к ней по мере необходимости и снижает риск того, что пользователи увидят поддельные или повреждённые версии политики конфиденциальности, подготовленные злонамеренными третьими сторонами.
Предоставление методов удаления данных пользователя, переданных на внешний сервер, по желанию пользователя является хорошей практикой. Аналогично, предоставление методов удаления этих данных, хранящихся на устройстве или его копии, является хорошей практикой, если данные уже были сохранены в приложении. Также рекомендуется предоставить возможность остановить передачу данных по требованию пользователя.
Это правило (рекомендация) основано на принципе «права быть забытым», продвигаемом Европейским союзом; более широко ожидается, что в будущем различные предложения потребуют дальнейшего усиления прав пользователей на защиту своих данных, что кажется очевидным. Поэтому в этих руководящих принципах мы рекомендуем предоставлять методы удаления данных пользователя, за исключением случаев, когда есть конкретные причины, препятствующие этому. И прекращение передачи данных в основном определяется соответствующей точкой зрения браузера «не отслеживать» («отказ от отслеживания»).
MainActivity.java
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
(некоторые части опущены)
case R.id.action_del_id:
// *** ТОЧКА *** Предоставление методов, с помощью которых переданные данные могут быть удалены пользователем.
операции.
new SendDataAsyncTack().execute(DEL_ID_URI, UserId);
return true;
}
Не следует передавать IMEI и другие идентификаторы, специфичные для устройства, вместе с данными пользователя способом, который связывает их. Фактически, если идентификатор, специфичный для устройства, связан с частью данных пользователя и опубликован или просочился, невозможно изменить этот идентификатор устройства впоследствии, поэтому это невозможно (или, по крайней мере, очень сложно) для сервера, получающего идентификатор и данные пользователя. В этом случае лучше использовать UUID или cookie (то есть переменные ID, генерируемые заново на основе случайных чисел каждый раз) вместо идентификатора устройства, связанного с данными пользователя. Это позволяет реализовать концепцию «забытых прав», которая обсуждалась выше.
MainActivity.java
@Override
protected String doInBackground(String... params) {
// *** POINT *** Use UUIDs or cookies to keep track of user data
// In this sample we use an ID generated on the server side
SharedPreferences sp = getSharedPreferences(PRIVACY_POLICY_PREF_NAME, MODE_PRIVATE);
UserId = sp.getString(ID_KEY, null);
if (UserId == null) {
// No token in SharedPreferences; fetch ID from server
try {
UserId = NetworkUtil.getCookie(GET_ID_URI, "", "id");
} catch (IOException e) {
// Catch exceptions such as certification errors
extMessage = e.toString();
}
// Store the fetched ID in SharedPreferences
sp.edit().putString(ID_KEY, UserId).commit();
}
return UserId;
}
Даже если данные пользователя доступны только временно на устройстве пользователя, сообщить об этом факте пользователю — хорошая идея, чтобы пользователь полностью и прозрачно понимал поведение приложения. В частности, следует сообщить пользователю, что данные, к которым обращается приложение, используются в устройстве только для определённых целей, не сохраняются и не отправляются. Сообщить эту информацию пользователю можно различными способами, например, указать это в описании приложения на рынке приложений. Информацию, которая используется только временно на устройстве, нет необходимости обсуждать в политике конфиденциальности приложения.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )