Anda dapat membangun atau menyetujui aplikasi yang menggunakan Open Cloud APIs untuk mengakses sumber daya Roblox. Open Cloud menyediakan autentikasi untuk aplikasi ini menggunakan OAuth 2.0.
- Sebagai pembuat pengalaman atau pemilik kelompok
Anda dapat dengan aman menggunakan alat yang dibuat oleh orang lain untuk meningkatkan produktivitas pembuatan Anda. Tingkat otorisasi OAuth 2.0 memungkinkan Anda untuk memberikan izin kepada aplikasi pihak ketiga untuk mengakses pengalaman Anda atau grup Anda tanpa memberikan kredensial dan informasi pribadi Anda. Anda memilih otorisasi pengalaman Roblox spesifik Anda,
- Sebagai pengembang aplikasi
Anda dapat membuat aplikasi untuk diri sendiri dan orang lain di komunitas Roblox. OAuth 2.0 mendefinisikan peran yang terlibat dalam proses autorisasi, protokol bagaimana peran bertukar satu sama lain, dan alir otorisasi yang Anda butuhkan untuk mengembangkan aplikasi yang aman dan kompatibel.
Peran
Protokol Open Cloud OAuth 2.0 memiliki peran berikut. Ini berguna untuk memahami peran spesifik sebelum belajar tentang bagaimana mereka berinteraksi satu sama lain dalam aliran otorisasi.
Pemilik sumber daya : Entitas yang dapat memberikan akses ke sumber daya yang dilindungi. Misalnya, seorang pembuat yang memungkinkan akses ke aplikasi pihak ketiga ke sumber daya Roblox mereka melalui Open Cloud Web API.
Server sumber daya : Layanan Roblox yang menyimpan sumber daya terlindung dan merespon permintaan dari pemilik sumber daya.
Klien : Aplikasi yang mengakses sumber daya yang dilindungi atas nama pemilik sumber daya (dengan otorisasi pemilik).
Server autorisasi : Server Roblox yang mengidentifikasi kepemilikan sumber daya dan menghasilkan token akses ke klien.
Jenis Ijin
Alir autorisasi, atau jenis izin, adalah langkah-langkah tindakan yang dilakukan oleh peran selama proses autorisasi. Roblox mendukung otorisasi kode otorisasi OAuth 2.0 dan Proof Key for Code Exchange (PKCE) ekstensi, dengan berbagai persyaratan implementasi untuk aplikasi yang mampu atau tidak mampu menyimpan rahasia klien.
Mengalir Kode Autorisasi
Melalui aliran kode otorisasi, sebuah klien menukar kode otorisasi untuk token akses dan token penyegaran untuk menyelesaikan proses otorisasi dalam langkah berikut:
Klien mengirim permintaan autorisasi ke server autorisasi Roblox.
Server autorisasi mengidentifikasi kepemilikan sumber daya.
Server autorisasi menerima izin untuk mengakses sumber daya Roblox tertentu dari pemilik sumber daya.
Server autorisasi mengalihkan pemilik sumber daya ke klien dengan kode autorisasi.
Klien mengajukan token akses menggunakan kode otorisasi di ujung token.
Klien menerima respons dari ujung token berisi token akses, token ID, dan token penyegarkan.
Klien mengambil sumber daya yang diizinkan setelah mendapatkan token akses.
Gambar berikut menjelaskan interaksi antara peran dalam alur kerja otorisasi yang akan Anda baca di bagian berikut:
Mengalir Kode Autorisasi dengan PKCE
Ekstensi PKCE dari kode otorisasi membantu mengurangi risiko menyebarkan kode otorisasi dan mencegah penipuan permintaan antara situs (CSRF), serangan yang menipu pengguna untuk mengirim permintaan web yang tidak sengaja. Flow ini menyelesaikan proses otorisasi dengan langkah berikut:
Klien menghasilkan kunci unik dan secara kriptografi acak bernama pengecek kode untuk setiap permintaan otorisasi.
Klien mengeksekkan algoritma pengacak SHA-256 pada verifikator kode untuk menghasilkan tantangan kode.
Jika klien:
Apakah klien publik, alih-alih menggunakan klien rahasia, itu mengirimkan ID klien dan tantangan kode dalam permintaan autorisasi.
Apakah klien rahasia, itu menambahkan tantangan kode bersama dengan ID klien dan rahasia dalam permintaan.
Klien mengirim permintaan autorisasi ke server autorisasi Roblox.
Server autorisasi mengidentifikasi kepemilikan sumber daya.
Server autorisasi menerima izin untuk mengakses sumber daya Roblox tertentu dari pemilik sumber daya.
Server autorisasi mengalihkan pemilik sumber daya ke klien dengan kode autorisasi.
Klien mencakup kode otorisasi dan verifier kode asli dalam permintaan token ke ujung token.
Server autorisasi mengidentifikasi kode autorisasi dan verifier kode yang terkait.
Klien menerima respons dari ujung token berisi token akses, token ID, dan token penyegarkan.
Klien mengambil sumber daya yang diizinkan setelah mendapatkan token akses.
Dukungan OpenID Connect
Roblox menggunakan OpenID Connect (OIDC) sebagai lapisan identitas di atas protokol OAuth 2.0 untuk autentikasi untuk melindungi informasi akun sensitif. OIDC memungkinkan aplikasi untuk memverifikasi identitas pengguna dan mengumpulkan informasi profil dasar mereka, seperti ID pengguna, nama pengguna, nama layar, dan tautan profil.
Pendaftaran dan Penerapan
Untuk menerapkan aplikasi web atau mobile yang menggunakan aliran kode autorisasi, Anda perlu:
Daftar aplikasi Anda dengan Roblox. Ini memungkinkan Anda untuk mendapatkan ID klien dan rahasia untuk mendaftar aplikasi Anda dengan Roblox dan membuat panggilan ke ujung Anda.
Gunakan aliran kode otorisasi. Untuk referensi lengkap dari ujung OAuth 2.0 yang Anda butuhkan untuk memanggil, lihat referensi Autentikasi.
Pergi melalui proses review untuk mendapatkan lebih banyak quota pengguna.