Yenileme belirteci nasıl çalışır
OAuth 2.0, bir oturumu zıt özelliklere sahip iki jetona böler. Erişim jetonu kısa ömürlüdür, çoğu zaman dakikalarla ölçülür ve her istekte API'lere sunulur. Yenileme belirteci ise uzun ömürlüdür, API'lere hiç gönderilmez ve tek bir görevi vardır: erişim jetonunun süresi dolduğunda istemci, yenileme belirtecini yetkilendirme sunucusunun jeton uç noktasına sunar ve genellikle yeni bir yenileme belirteciyle birlikte taze bir erişim jetonu alır.
Bu bölünme hasarı sınırlar. Erişim jetonu sızarsa dakikalar içinde kendiliğinden ölür. Asıl değerli ödül olan yenileme belirteci ise yalnızca istemci ile yetkilendirme sunucusu arasında, tek bir sağlamlaştırılmış uç nokta üzerinden dolaşır; her kullanım, yeni jetonlar üretilmeden önce iptal listeleri, istemci kimliği ve anomali kontrolleriyle doğrulanabilir.
Yenileme belirteci neden önemli
Yenileme belirteci olmadan sistemler çirkin bir seçimle karşılaşır: çalındığında tehlikeli ve iptali neredeyse imkânsız uzun ömürlü erişim jetonları üretmek ya da kullanıcıları birkaç dakikada bir yeniden doğrulamaya zorlamak. Yenileme belirteci bu ikilemi çözer; uzun bir oturumun kullanıcı deneyimini, kısa ömürlü kimlik bilgilerinin güvenlik profiliyle birlikte sunar.
Ayrıca iptalin denetim noktasıdır. Her yenileme yetkilendirme sunucusundan geçtiği için yöneticiler, yenileme belirtecini geçersiz kılarak bir kullanıcıyı, cihazı veya uygulamayı devreden çıkarabilir; mevcut erişim jetonu ise kendi süresi dolunca biter. Yenileme belirteci rotasyonu bunu daha da güçlendirir: her kullanımda eski belirteç geçersiz kılınıp yenisi verilir; böylece çalınıp tekrar kullanılan bir belirteç halefiyle çakışır ve sunucu tüm belirteç ailesini iptal edebilir.
Uygulamada yenileme belirteci
Saklama biçimi istemci türüne bağlıdır. Sunucu taraflı uygulamalar yenileme belirteçlerini korunan sunucu depolamasında tutar. Yerel ve mobil uygulamalar platform anahtar zincirlerini kullanır. Tarayıcı tabanlı tek sayfa uygulamalar en zor durumdur; çünkü JavaScript'in okuyabildiği her şey siteler arası betik saldırılarına açıktır. Güncel öneriler, kısa yenileme belirteci ömürleriyle rotasyonu ya da jetonları bir arka uç aracısıyla tarayıcının tamamen dışında tutmayı savunur.
Operasyonel olarak ekipler rotasyonu ve tekrar kullanım tespitini etkinleştirmeli, yenileme belirteci ömürlerini uygulamanın hassasiyetine göre ayarlamalı ve jeton iptalini işten çıkış sürecine bağlamalıdır; böylece bir kullanıcıyı devre dışı bırakmak erişimini gerçekten bitirir. Monosign, bir OIDC sağlayıcısı olarak jetonları merkezden tanımlanan oturum ve ömür politikaları altında üretir ve yönetir.