Идентификатор отправителя GCM / номер проекта

Чтобы отправить GCM, у нас есть SENDER ID из консоли API Google, важно ли сохранять этот SENDER ID защищенным? Я имею в виду, сможет ли кто-то совершать плохие поступки, если знает этот идентификатор? Я сделал ошибку и думаю, что ID был в одном из моих проектов... Могу ли я как-то изменить его? Я не смог найти способ изменить его, посмотрев на консоль Google API!. я должен волноваться об этом? или это нормально?

ключи API сервера и браузера могут быть изменены, но не SENDER ID, PROJECT NUMBER...

3 ответа

Решение

Да, вы должны сохранить project number (какой Sender Id а также для GCM) защищен; в противном случае любой может использовать его, и он будет учитываться при использовании вами API. Он похож на ключ API для любого другого сервиса, например, Google Maps.

Я не знаю ни одного способа изменить его, кроме как создать новую учетную запись Google, но в панели инструментов консоли API Google есть возможность зарегистрировать / сгенерировать Project ID но я не уверен, что GCM примет это как Sender Id, Вы можете попробовать.

Редактировать:

Это может быть не так опасно, если ваш project number выставлено (в старых API идентификатор отправителя был вашим электронным письмом), потому что вам все равно понадобится API key чтобы иметь возможность отправлять уведомления через GCM

Я хотел бы добавить, что пока project ID одно только не может использоваться для отправки уведомлений через GCM, оно может использоваться другим приложением Android для регистрации в GCM и получения уведомлений с вашего сервера. Конечно, чтобы получать уведомления от вашего сервера, это приложение должно сначала связаться с вашим сервером, чтобы отправить его Registration IdТаким образом, в зависимости от реализации сервера, вы можете заблокировать это.

Как я понимаю:

1) SenderID == ProjectID (как отмечает iTech)

2) SenderID/ProjectID встроен в ваше приложение во время сборки через "googleservices.json"

3) Ваше приложение использует & требует ваш SenderID (через R.string.gcm_defaultSenderId) для регистрации в GCM, используя следующий код:

String token = instanceID.getToken(getString(R.string.gcm_defaultSenderId), GoogleCloudMessaging.INSTANCE_ID_SCOPE, null);

4) Таким образом, согласно моему пониманию, именно SenderID должен быть включен в ваше приложение GCM и не защищен.

Другие вопросы по тегам