Saat developer membuat software, software tersebut secara rutin menyertakan modul yang berjalan di server web, modul lain yang berjalan di browser, dan modul lain yang berjalan sebagai aplikasi seluler Android atau iOS. Developer dan orang yang menggunakan software mereka biasanya menganggap semua modul ini sebagai bagian dari satu aplikasi.
Implementasi OAuth 2.0 Google mendukung pandangan dunia ini. Untuk menggunakan salah satu layanan berbasis OAuth2.0, Anda harus menyiapkan software di Google API Console. Unit organisasi di API Console adalah "project", yang dapat sesuai dengan aplikasi multi-komponen. Untuk setiap project, Anda dapat memberikan informasi branding, dan Anda harus menentukan API mana yang akan diakses aplikasi. Setiap komponen aplikasi multi-komponen diidentifikasi oleh ID klien, string unik yang dibuat di API Console.
Sasaran otorisasi lintas klien
Saat aplikasi menggunakan OAuth 2.0 untuk otorisasi, aplikasi bertindak atas nama pengguna untuk meminta token akses OAuth 2.0 untuk mengakses resource, yang diidentifikasi aplikasi dengan satu atau beberapa string cakupan. Biasanya, pengguna diminta untuk menyetujui akses.
Saat pengguna memberikan akses ke aplikasi Anda untuk cakupan tertentu, pengguna akan melihat layar izin pengguna, yang mencakup branding produk tingkat project yang Anda siapkan di Google API Console. Oleh karena itu, Google menganggap bahwa jika pengguna telah memberikan akses ke cakupan tertentu untuk ID klien mana pun dalam project, pemberian akses tersebut menunjukkan kepercayaan pengguna terhadap seluruh aplikasi untuk cakupan tersebut.
Efeknya adalah pengguna tidak akan diminta untuk menyetujui akses ke resource lebih dari sekali untuk aplikasi logis yang sama, setiap kali komponen aplikasi dapat diautentikasi secara andal oleh infrastruktur otorisasi Google, yang saat ini mencakup aplikasi web, aplikasi Android, aplikasi Chrome, aplikasi iOS, aplikasi desktop, dan perangkat input terbatas.
Token akses lintas klien
Software dapat memperoleh Token akses OAuth 2.0 dengan berbagai cara, bergantung pada platform tempat kode berjalan. Untuk mengetahui detailnya, lihat Menggunakan OAuth 2.0 untuk Mengakses Google API. Biasanya, persetujuan pengguna diperlukan saat memberikan token akses.
Untungnya, infrastruktur otorisasi Google dapat menggunakan informasi tentang persetujuan pengguna untuk ID klien dalam project tertentu saat mengevaluasi apakah akan mengizinkan orang lain dalam project yang sama.
Efeknya adalah jika aplikasi Android meminta token akses untuk cakupan tertentu, dan pengguna yang meminta telah memberikan persetujuan ke aplikasi web dalam project yang sama untuk cakupan yang sama, pengguna tidak akan diminta lagi untuk menyetujui. Hal ini berfungsi dua arah: jika akses ke cakupan telah diberikan di aplikasi Android Anda, akses tidak akan diminta lagi dari klien lain dalam project yang sama, seperti aplikasi web.