Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Apigee Edge, API'leri güvenli hale getirmek için OAuth 2.0 çerçevesini sağlar. OAuth2, en popüler açık standartlı, jeton tabanlı kimlik doğrulama ve yetkilendirme şemalarından biridir. Kullanıcıların kullanıcı adlarını ve şifrelerini paylaşmalarına gerek kalmadan istemci uygulamalarının kullanıcılar adına API'lere erişmesini sağlar.
Apigee Edge, geliştiricilerin OAuthv2 politikası'nı kullanarak dört OAuth2 izin türünden (istemci kimlik bilgileri, şifre, örtülü ve yetkilendirme kodu) herhangi birini uygulayarak erişim ve/veya yenileme jetonları oluşturmasına olanak tanır. İstemci uygulamaları, güvenli API'leri kullanmak için erişim jetonlarını kullanır. Her erişim jetonunun kendi geçerlilik bitiş zamanı vardır ve bu zaman OAuthv2 politikasında ayarlanabilir.
Yenileme jetonları, bazı izin türlerinde erişim jetonlarıyla birlikte isteğe bağlı olarak verilir. Yenileme jetonları, orijinal erişim jetonunun süresi dolduktan veya iptal edildikten sonra yeni ve geçerli erişim jetonları almak için kullanılır. Yenileme jetonlarının süre sonu OAuthv2 politikasında da ayarlanabilir.
Antipattern
OAuthv2 politikasında erişim jetonu ve/veya yenileme jetonu için uzun bir geçerlilik süresi belirlenmesi OAuth jetonlarının birikmesine ve Cassandra düğümlerinde disk alanı kullanımının artmasına neden olur.
Aşağıdaki örnek OAuthV2 politikasında, yenileme jetonları için 200 günlük uzun bir geçerlilik süresi gösterilmektedir:
<OAuthV2 name="GenerateAccessToken"> <Operation>GenerateAccessToken</Operation> <ExpiresIn>1800000</ExpiresIn> <!-- 30 minutes --> <RefreshTokenExpiresIn>17280000000</RefreshTokenExpiresIn> <!-- 200 days --> <SupportedGrantTypes> <GrantType>password</GrantType> </SupportedGrantTypes> <GenerateResponse enabled="true"/> </OAuthV2>
Yukarıdaki örnekte:
- Erişim jetonunun geçerlilik süresi 30 dakika gibi makul bir süreye ayarlanır.
- Yenileme jetonunun geçerlilik süresi 200 gün gibi çok uzun bir süre olarak ayarlanır.
- Bu API'ye yönelik trafik 10 istek/saniye ise bir günde 864.000 jeton oluşturabilir.
- Yenileme jetonlarının süresi yalnızca 200 gün sonra dolduğundan, veri deposunda (Cassandra) uzun süre kalır ve sürekli birikmeye neden olur.
Etki
- Veri deposunda (Cassandra) disk alanı kullanımının önemli ölçüde artmasına neden olur.
- Özel bulut kullanıcıları için bu durum, depolama maliyetlerini artırabilir veya en kötü durumda diskin dolmasına ve çalışma zamanı hatalarına ya da kesintiye yol açabilir.
En İyi Uygulama
OAuth erişimi ve yenileme jetonları için, belirli güvenlik gereksinimlerinize bağlı olarak uygun bir düşük geçerlilik süresi kullanın. Böylece bu jetonlar hızlıca temizlenir ve birikmeleri önlenir.
Yenileme jetonlarının geçerlilik süresini, erişim jetonlarından biraz daha uzun olacak şekilde ayarlayın. Örneğin, erişim jetonu için 30 dakika, yenileme jetonu için 60 dakika ayarlarsanız.
Bu sayede:
- Erişim jetonunun süresi dolduktan sonra yeni erişim ve yenileme jetonları oluşturmak için yenileme jetonu kullanmak üzere yeterli süre vardır.
- Yenileme jetonlarının geçerlilik süresi biraz sonra dolar ve birikmeyi önlemek için zamanında temizlenebilir.