Google Hizmet Hesapları, varolan bir kullanıcı hesabının kimliğine bürünmenizi sağlar (bazı servisler için). Google Drive'da test etmedim, ancak bunu Web Yöneticisi araçları API'sı ile kullanmıştım. Talimatlar şu adreste bulunabilir: https://developers.google.com/identity/protocols/OAuth2ServiceAccount
Bunları özetlemek gerekirse, servis hesabı kimlik bilgilerini oluştururken "alt" parametresini "Uygulamanın temsilci erişimi talep ettiği kullanıcının e-posta adresi" ile belirtebilirsiniz. Erişim isteğinde bulunduğunuz hesap mevcut olmalı ve talep ettiğiniz hizmetlere erişim iznine sahip olmalıdır. Google Java, Python ve HTTP/REST örnekleri sağlar yukarıdaki linkte
, burada Python örnek:
credentials = SignedJwtAssertionCredentials(client_email, private_key,
'https://www.googleapis.com/auth/sqlservice.admin',
sub='[email protected]')
Ben Ruby google-api-müşteri mücevher (0.9.pre3) kullanıyorum ve benim hizmet hesabını kullanarak kimlik doğrulaması için bu kodu kullanabilirsiniz
client = Google::Auth::ServiceAccountCredentials.new(json_key_io: json_key_io, scope: scope)
client.update!(sub: '[email protected]')
client.fetch_access_token!
service = Google::Apis::WebmastersV3::WebmastersService.new
service.authorization = client
ve ben sitelere
erişebilir: başka adımda belirtilen zorundadır böylece ServiceAccountCredentials yapıcısı, üst sınıfa 'alt' parametresini geçmez
Bir proje ile ilişkili API'yi google hesabında mı kullanıyorsunuz? Kimlik ve proje arasında ortak bir şey var mı? –
Bunu değiştiremezsiniz, hizmet hesabı e-posta adresi Google tarafından oluşturulduysa, ona bağlı kaldınız. Hayır, aynı zamanda kendiniz tedarik edemezsiniz, Google tarafından üretilmiş olması gerekir. – DaImTo
@DaImTo Bu yorumu cevap olarak yazalım ve size bir çek göndereceğim! –