OAuth (Open Authorization), bir uygulamanın kullanıcı adına başka bir servise erişebilmesi için kullanıcının şifresini paylaşmaya gerek olmadan, yetkilendirme tokenı kullanan açık standart protokoldür. Açık bankacılığın temel yetkilendirme katmanıdır.
OAuth 2.0 Akış (Authorization Code Flow)
- Üçüncü taraf uygulama kullanıcıyı bankaya yönlendirir
- Kullanıcı bankada giriş yapıp izin verir
- Banka geri yönlendirmede
codeverir - Uygulama bu code'u
access_tokenile takas eder - Token ile API çağrıları yapılır (sınırlı süre)
Token Türleri
- Access Token: Kısa ömürlü (15-60 dk), API çağrılarında kullanılır
- Refresh Token: Uzun ömürlü, yeni access token almak için
Türkiye'deki açık bankacılık API'leri OAuth 2.0 + OpenID Connect kullanır.
Örnek Kullanım
- Açık bankacılık entegrasyonumuz OAuth 2.0 ile çalışıyor.
- Refresh token ile kullanıcıdan tekrar onay almadan token yeniliyoruz.