Создать одну или несколько учетных данных для разных проектов с использованием идентификаторов клиентов OAuth 2.0?

Сначала я создал проект Google API в консоли разработчика Google и настроил идентификаторы клиентов OAuth 2.0 в качестве учетных данных, чтобы мои проекты C # могли получать доступ к Google Диску.

Однако я новичок в разработке с помощью API Google. Я не могу понять, когда мне следует создавать новые учетные данные или проекты.

Должен ли я создать несколько учетных данных (может быть, одни учетные данные для одного проекта?) Или на самом деле можно использовать одни и те же учетные данные для нескольких проектов? Какова цель создания нескольких учетных данных?




Ответы (1)


Если вы создаете разные приложения, вам следует создавать разные проекты на консоли разработчика Google, каждый со своим собственным набором учетных данных.

Причина в том, чтобы убедиться, что вы не столкнетесь с какими-либо проблемами с квотой. Это также позволяет Google отслеживать, кто и в каком объеме использует их данные.

Вы также должны учитывать, что когда вы определяете свой проект и создаете учетные данные, вы даете ему имя. Когда пользователь аутентифицирует ваше приложение, он предоставляет доступ Super app one для использования их данных, если вы используете этот клиент с Super app two, тогда они не будут знать, у кого есть доступ к их данным.

Мои личные правила

  1. Каждое приложение - это проект в консоли разработчика Google.
  2. в этом проекте я создаю идентификатор клиента для локальной, тестовой и производственной сред.

Обновление из комментария о квоте на создание проекта

Моя текущая квота на проект

В вашей квоте осталось 37 проектов. Учить больше.

Вы всегда можете запросить дополнительные проекты, сделать это пораньше, хотя я помню, что на их выполнение ушла около недели. Запросы квот проекта

Затем обновите использование, чтобы создать несколько учетных данных для одного проекта

Как я уже упоминал ранее, если вы используете один и тот же проект для учетных данных в разных проектах, вы упускаете возможность вести своих пользователей. Поля, отмеченные стрелками, обозначают APPLICATION, они относятся к приложению, запрашивающему доступ. Они являются частью самого проекта. Все клиенты, созданные в рамках этого проекта, будут использовать один и тот же экран согласия. Если вы используете его для двух разных приложений, вы, IMO, упускаете возможность указать пользователям, в каком приложении они предоставляют доступ к своим данным.

введите описание изображения здесь

Вам также может не хватать ведущего Google, поскольку я считаю, что TOS требует, чтобы на каждое приложение отправлял запрос, поэтому экран согласия с названием приложения и ссылкой на контакты приложения. Однако я думаю, что мне нужно еще раз прочитать документ TOS, чтобы убедиться, что это требование.

Вы также с большей вероятностью достигнете пределов квот. Многие ограничения основаны на проекте, а не на учетных данных, поэтому, если у вас есть два приложения, читающих из одного и того же API, с двумя разными учетными данными, созданными в одном проекте. Вы достигнете квоты намного быстрее, чем если бы вы создавали для каждого приложения отдельный проект.

Пример: пример Google Analytics максимальное количество запросов на проект 50000 в день.

Тот же проект

  • Приложение одно запрашивает 20000
  • Приложение два запроса 30000

как приложение 1, так и приложение 2 теперь заблокированы от выполнения запросов до конца дня, поскольку они получили всего 50000 запросов.

Два отдельных проекта

  • Приложение 1 делает 30000 запросов
  • Приложение 2 делает 50000 запросов.

Приложение 2 теперь заблокировано до конца дня, так как оно отправило 50000 запросов. Первое приложение продолжает работать, пока не получит 50000 запросов.

person DaImTo    schedule 22.03.2018
comment
спасибо, однако существует ограничение на создание проекта (макс. 8 проектов) в проектах разработчиков Google ... и этого недостаточно для моих проектов. Итак, как тогда использовать для создания нескольких учетных данных для одного и того же проекта? Благодарность - person Tak; 23.03.2018
comment
Восемь, ты уверен? У меня сейчас около 18 и есть место для большего. Когда я достиг квоты, я просто запросил продление еще на 50. Проверьте редактирование. вы всегда можете попросить большего. - person DaImTo; 23.03.2018
comment
@tak ваш вопрос породил сообщение в блоге, надеюсь, вы не возражаете. daimto.com/is-your-project-misleading-users - person DaImTo; 23.03.2018
comment
Просто чтобы убедиться, что я правильно вас понимаю, @DaImTo, вы думаете, что целесообразно использовать один и тот же проект, но сделать несколько учетных данных для среды разработки, продукта и тестирования? - person Ollie Khakwani; 19.04.2019
comment
вы можете лично я бы не стал. Prod, особенно, если вы не хотите, чтобы что-то из того, что вы делаете в тестировании и разработчике, повлияло на это. Однако с изменениями, связанными с необходимостью проверки приложения, вам, возможно, придется пройти процесс более одного раза, если у вас их нет в одном проекте. - person DaImTo; 20.04.2019