Hesapların bağlantısını kaldırma

Platformdan veya Google'dan bağlantıyı kaldırma işlemi başlatılabilir. Her ikisinde de tutarlı bir bağlantı durumunun gösterilmesi en iyi kullanıcı deneyimini sağlar. Jeton iptali uç noktası veya Hesaplar Arası Koruma desteği, Google Hesabı Bağlama için isteğe bağlıdır.

Hesapların bağlantısı aşağıdakilerden herhangi biri nedeniyle kaldırılabilir:

    • adlı kullanıcıdan kullanıcı isteği
    • bir Google uygulaması veya Google Hesabı ayarları
    • Platformunuz
  • Süresi dolmuş bir yenileme jetonunun yenilenmemesi
  • Sizin tarafınızdan veya Google tarafından başlatılan diğer etkinlikler. Örneğin, hesabın kötüye kullanım ve tehdit algılama hizmetleri tarafından askıya alınması.

Kullanıcı Google'dan bağlantıyı kaldırma isteğinde bulundu

Bir kullanıcının Google Hesabı veya uygulaması aracılığıyla hesap bağlantısını kaldırma işlemi daha önce yapılan erişim ve yenileme jetonlarını siler, kullanıcı iznini kaldırır ve isteğe bağlı olarak, jeton iptal etme uç noktanızı çağırır.

Kullanıcı platformunuzun bağlantısını kaldırma isteğinde bulundu

Kullanıcıların bağlantısını kaldırabilecekleri bir mekanizma (ör. hesaplarının URL'si) sağlamanız gerekir. Kullanıcıların bağlantısını kaldırmaları için bir yöntem sunmuyorsanız kullanıcıların bağlı hesaplarını yönetebilmeleri için Google Hesabı'nın bağlantısını ekleyin.

Risk ve Olay Paylaşımı ve Ortak Çalışma (RISC) özelliğini uygulamayı seçebilir ve kullanıcıların hesap bağlama durumuyla ilgili değişiklikleri Google'a bildirebilirsiniz. Bu sayede, hem platformunuzun hem de Google'ın, bağlantı durumunu güncellemek için yenileme veya erişim jetonu isteğine ihtiyaç duymadan geçerli ve tutarlı bir bağlantı durumu gösterdiği daha iyi bir kullanıcı deneyimi sunulur.

Jeton geçerlilik bitiş tarihi

Sorunsuz bir kullanıcı deneyimi sağlamak ve hizmet kesintisi yaşamamak için Google, kullanım ömrü sonuna yaklaşıldığında yenileme jetonlarını yenilemeyi dener. Bazı senaryolarda, geçerli bir yenileme jetonu kullanılamadığında hesapların yeniden bağlanması için kullanıcı izni gerekebilir.

Platformunuzu birden çok geçerlilik süresi sona ermiş erişim ve yenileme jetonunu destekleyecek şekilde tasarlamanız durumunda, kümelenmiş ortamlar arasındaki istemci-sunucu exchange'lerinde mevcut olan yarış koşulları en aza indirilir, kullanıcıların hizmet kesintisi yaşamaması, karmaşık zamanlama ve hata işleme senaryolarının en aza indirilmesi sağlanır. Nihayetinde tutarlı olsa da hem sunucu hem de yeni, süresi dolmamış jetonlar, istemci sunucusu jeton yenileme değişimi sırasında ve küme senkronizasyonundan önce kısa bir süre kullanılabilir. Örneğin, hizmetinize önceki erişim süresi dolmamış erişim jetonunu kullanan bir Google isteği, siz yeni bir erişim jetonu verdikten hemen sonra, Google'da makbuz ve küme senkronizasyonu gerçekleşmeden önce gerçekleşir. Jeton Rotasyonunu Yenile alternatif güvenlik önlemlerinin kullanılması önerilir.

Diğer etkinlikler

Hesapların bağlantısı; etkinlik olmaması, askıya alınma, kötü amaçlı davranış gibi çeşitli nedenlerle kaldırılabilir. Bu tür senaryolarda platformunuz ve Google, hesap ve bağlantı durumundaki değişiklikleri birbirlerine bildirerek kullanıcı hesaplarını en iyi şekilde yönetebilir ve yeniden bağlayabilir.

Google'ın çağırması için bir jeton iptali uç noktası uygulayın ve platformunuzun ve Google'ın tutarlı kullanıcı hesabı bağlantı durumunu korumasını sağlamak için RISC'i kullanarak jeton iptali etkinliklerinizi Google'a bildirin.

Jeton iptali uç noktası

Bir OAuth 2.0 jeton iptali uç noktasını destekliyorsanız, platformunuz Google'dan bildirimler alabilir. Bu, kullanıcıları bağlantı durumu değişiklikleri konusunda bilgilendirmenize, bir belirteci geçersiz kılmanıza ve güvenlik kimlik bilgilerini ve yetkilendirme izinlerini temizlemenize olanak tanır.

İstek aşağıdaki forma sahiptir:

POST /revoke HTTP/1.1
Host: oauth2.example.com
Content-Type: application/x-www-form-urlencoded

client_id=GOOGLE_CLIENT_ID&client_secret=GOOGLE_CLIENT_SECRET&token=TOKEN&token_type_hint=refresh_token

Jeton iptali uç noktanız aşağıdaki parametreleri işleyebilmelidir:

İptal uç noktası parametreleri
client_id İsteğin kaynağını Google olarak tanımlayan bir dize. Bu dize, sisteminize Google'ın benzersiz tanımlayıcısı olarak kaydedilmelidir.
client_secret Hizmetiniz için Google'a kaydettiğiniz gizli bir dize.
token İptal edilecek jeton.
token_type_hint (İsteğe bağlı) access_token veya refresh_token belirteci olmak üzere, iptal edilen belirteç türü. Belirtilmemişse, varsayılan olarak access_token .

Jeton silindiğinde veya geçersiz olduğunda bir yanıt döndür. Bir örnek için aşağıdakilere bakın:

HTTP/1.1 200 Success
Content-Type: application/json;charset=UTF-8

Belirteç herhangi bir nedenle silinemezse, aşağıdaki örnekte gösterildiği gibi 503 yanıt kodunu döndürün:

HTTP/1.1 503 Service Unavailable
Content-Type: application/json;charset=UTF-8
Retry-After: HTTP-date / delay-seconds

Google, isteği daha sonra veya Retry-After tarafından istendiği şekilde yeniden dener.

Hesaplar Arası Koruma (RISC)

Hesaplar Arası Koruma'yı destekliyorsanız platformunuz aşağıdaki durumlarda Google'ı bilgilendirebilir: erişim veya yenileme jetonları iptal edilir. Bu sayede Google, kullanıcıları bağlantı durumu değişiklikleri, jetonu geçersiz kılma, güvenlik kimlik bilgilerini temizleme ve izin verir.

Hesaplar Arası Koruma, Bu tarihte geliştirilen RISC standardı Kimlik Doğrulama Vakfı hakkında daha fazla bilgi edinin.

Güvenlik Etkinliği Jetonu , erişim kodu iptalini Google'a bildirmek için kullanılır.

Kodu çözüldüğünde bir jeton iptal etkinliği aşağıdaki örnekteki gibi görünür:

{
  "iss":"http://risc.example.com",
  "iat":1521068887,
  "aud":"google_account_linking",
  "jti":"101942095",
  "toe": "1508184602",
  "events": {
    "https://schemas.openid.net/secevent/oauth/event-type/token-revoked":{
      "subject_type": "oauth_token",
      "token_type": "refresh_token",
      "token_identifier_alg": "hash_SHA512_double",
      "token": "double SHA-512 hash value of token"
    }
  }
}

Jeton iptali etkinliklerini Google'a bildirmek için kullandığınız Güvenlik Etkinliği Jetonları aşağıdaki tabloda belirtilen şartlara uymalıdır:

Jeton iptali etkinlikleri
iss Düzenleyenin Hak Talebi: Bu, sizin barındırdığınız ve paylaşıldığı bir URL'dir Google'a bildirmeleri gerekir.
aud Kitle Hak Talebi: Bu, Google'ı JWT alıcısı olarak tanımlar. Google google_account_linking olarak ayarlanmalıdır.
jti JWT Kimlik Hak Talebi: Bu, her kimlik için oluşturduğunuz benzersiz bir kimliktir güvenlik etkinliği jetonu.
iat Hak Talebinde Gönderildi: Bu, NumericDate bir değerdir bu güvenlik etkinliği jetonunun oluşturulduğu zamanı temsil eder.
toe Etkinlik Hak Talebinin Zamanı: İsteğe bağlıdır. zamanı temsil eden NumericDate değeri Jeton iptal edildi.
exp Geçerlilik Bitiş Tarihiyle İlgili Hak Talebi: Bu alanı dahil etmeyin. bu bildirime neden olan etkinlik zaten gerçekleşmiş olduğundan
events
Güvenlik Etkinlikleri Talebi: Bu bir JSON nesnesidir ve Yalnızca tek bir jeton iptal etkinliği içermelidir.
subject_type Bu değer oauth_token olarak ayarlanmalıdır.
token_type Bu, iptal edilen jetonun türüdür. access_token veya refresh_token.
token_identifier_alg Bu, jetonu kodlamak için kullanılan algoritmadır ve jetonun kodu hash_SHA512_double
token Bu, iptal edilen jetonun kimliğidir.

Alan türleri ve biçimleri hakkında daha fazla bilgi için JSON Web Jetonu (JWT).