Учетные данные разработчика (например, пароли, ключи и идентификаторы клиентов) предназначены для использования вами и идентифицируют клиента API. Вы будете хранить свои учетные данные в конфиденциальном порядке и предпринимать разумные меры для предотвращения и отказа от других клиентов API от использования ваших учетных данных. Учетные данные разработчика не могут быть встроены в проекты с открытым исходным кодом.
(https://developers.google.com/terms/, мой акцент)
Означает ли это, что моему клиенту командной строки с открытым исходным кодом необходимо заставить каждого пользователя моего программного обеспечения создать новый проект на консоли Google Cloud? Есть ли лучший вариант?
Не так сложно извлечь идентификатор клиента и "секрет" клиента из не-openource, так почему же различие?
"Установить приложения" идентификаторы клиентов и секреты на самом деле не являются секретами, и документация Google, похоже, согласна:
В результате процесса создается идентификатор клиента и, в некоторых случаях, секрет клиента, который вы вставляете в исходный код приложения. (В этом контексте секрет клиента явно не рассматривается как секрет.)
(https://developers.google.com/accounts/docs/OAuth2, снова мой акцент)