chrome.identity

refresh date: 2026-09-25 robots: noindex

Açıklama

OAuth2 erişim jetonlarını almak için chrome.identity API'yi kullanın.

İzinler

identity

Türler

AccountInfo

Özellikler

  • id

    dize

    Hesabın benzersiz tanımlayıcısı. Bu kimlik, hesap kullanım süresi boyunca değişmez.

AccountStatus

Chrome 84+

Enum

"SYNC"
Senkronizasyonun ana hesap için etkinleştirildiğini belirtir.

"ANY"
Varsa ana hesabın varlığını belirtir.

GetAuthTokenResult

Chrome 105 veya daha yeni bir sürüm

Özellikler

  • grantedScopes

    string[] isteğe bağlı

    Uzantıya verilen OAuth2 kapsamlarının listesi.

  • token

    dize isteğe bağlı

    İstekle ilişkili jeton.

InvalidTokenDetails

Özellikler

  • token

    dize

    Önbellekten kaldırılması gereken jeton.

ProfileDetails

Chrome 84+

Özellikler

  • accountStatus

    AccountStatus isteğe bağlı

    ProfileUserInfo döndürülmesi gereken bir profile giriş yapılan ana hesabın durumu. Varsayılan olarak SYNC hesap durumu kullanılır.

ProfileUserInfo

Özellikler

  • e-posta

    dize

    Mevcut profilde oturum açmış kullanıcı hesabının e-posta adresi. Kullanıcı oturum açmamışsa veya identity.email manifest izni belirtilmemişse boş olur.

  • id

    dize

    Hesabın benzersiz tanımlayıcısı. Bu kimlik, hesap kullanım süresi boyunca değişmez. Kullanıcı oturum açmamışsa veya (M41'de ve sonraki sürümlerde) identity.email manifest izni belirtilmemişse boş.

TokenDetails

Özellikler

  • hesap

    AccountInfo isteğe bağlı

    Jetonu döndürülmesi gereken hesap kimliği. Belirtilmezse işlev, Chrome profilindeki bir hesabı kullanır: varsa senkronizasyon hesabı, yoksa ilk Google web hesabı.

  • enableGranularPermissions

    boolean isteğe bağlı

    Chrome 87 veya daha yeni bir sürüm

    enableGranularPermissions işareti, uzantıların istenen izinlerin ayrı ayrı verildiği veya reddedildiği ayrıntılı izin kullanıcı rızası ekranını erken etkinleştirmesine olanak tanır.

  • etkileşimli

    boolean isteğe bağlı

    Jeton alma işlemi için kullanıcının Chrome'da oturum açması veya uygulamanın istediği kapsamları onaylaması gerekebilir. Etkileşimli işaret true ise getAuthToken, kullanıcıya gerektiği şekilde istem gösterir. Flag false olduğunda veya atlandığında, istem gerektiği her durumda getAuthToken hata döndürür.

  • kapsamlar

    string[] isteğe bağlı

    İstenecek OAuth2 kapsamlarının listesi.

    scopes alanı mevcut olduğunda, manifest.json dosyasında belirtilen kapsam listesini geçersiz kılar.

WebAuthFlowDetails

Özellikler

  • abortOnLoadForNonInteractive

    boolean isteğe bağlı

    Chrome 113 ve sonraki sürümler

    Sayfa yüklendikten sonra etkileşimli olmayan istekler için launchWebAuthFlow sonlandırılıp sonlandırılmayacağı. Bu parametre, etkileşimli akışları etkilemez.

    true (varsayılan) olarak ayarlandığında akış, sayfa yüklendikten hemen sonra sonlandırılır. false olarak ayarlandığında akış yalnızca timeoutMsForNonInteractive geçtikten sonra sonlandırılır. Bu, sayfa yüklendikten sonra yönlendirme yapmak için JavaScript kullanan kimlik sağlayıcılar için yararlıdır.

  • etkileşimli

    boolean isteğe bağlı

    Kimlik doğrulama akışının etkileşimli modda başlatılıp başlatılmayacağı.

    Bazı kimlik doğrulama akışları, sonuç URL'sine hemen yönlendirme yapabileceğinden launchWebAuthFlow, ilk gezinme nihai URL'ye yönlendirme yapana veya görüntülenmesi amaçlanan bir sayfanın yüklenmesi tamamlanana kadar web görünümünü gizler.

    interactive işareti true ise sayfa yükleme işlemi tamamlandığında pencere gösterilir. İşaret false ise veya atlanmışsa ilk gezinme akışı tamamlamazsa launchWebAuthFlow hata döndürür.

    Yönlendirme için JavaScript kullanan akışlarda, sayfaya yönlendirme yapma şansı vermek amacıyla abortOnLoadForNonInteractive, timeoutMsForNonInteractive ayarıyla birlikte false olarak ayarlanabilir.

  • timeoutMsForNonInteractive

    number isteğe bağlı

    Chrome 113 ve sonraki sürümler

    Toplamda launchWebAuthFlow milisaniye boyunca etkileşimli olmayan modda çalışmasına izin verilir. Yalnızca interactive false ise etkilidir.

  • url

    dize

    Kimlik doğrulama akışını başlatan URL.

Yöntemler

clearAllCachedAuthTokens()

Promise Chrome 87 ve sonraki sürümler
chrome.identity.clearAllCachedAuthTokens(
  callback?: function,
)
: Promise<void>

Identity API'nin durumunu sıfırlar:

  • Tüm OAuth2 erişim jetonlarını jeton önbelleğinden kaldırır.
  • Kullanıcının hesap tercihlerini kaldırır.
  • Kullanıcının tüm kimlik doğrulama akışlarındaki yetkisini kaldırır.

Parametreler

  • callback

    işlev isteğe bağlı

    callback parametresi şu şekilde görünür:

    () => void

İadeler

  • Promise<void>

    Chrome 106 veya daha yeni bir sürüm

    Durum temizlendiğinde çözümlenen bir Promise döndürür.

    Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.

getAccounts()

Promise Yeni geliştirilenler kanalı
chrome.identity.getAccounts(
  callback?: function,
)
: Promise<AccountInfo[]>

Profildeki hesapları açıklayan AccountInfo nesnelerinin listesini alır.

getAccounts yalnızca geliştirici kanalında desteklenir.

Parametreler

  • callback

    işlev isteğe bağlı

    callback parametresi şu şekilde görünür:

    (accounts: AccountInfo[]) => void

İadeler

  • Promise<AccountInfo[]>

    Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.

getAuthToken()

Promise
chrome.identity.getAuthToken(
  details?: TokenDetails,
  callback?: function,
)
: Promise<GetAuthTokenResult>

manifest.json dosyasının oauth2 bölümünde belirtilen istemci kimliğini ve kapsamları kullanarak bir OAuth2 erişim jetonu alır.

Identity API, erişim jetonlarını bellekte önbelleğe alır. Bu nedenle, jeton gerektiğinde getAuthToken yöntemini etkileşimli olmayan bir şekilde çağırmak sorun olmaz. Jeton önbelleği, geçerlilik süresini otomatik olarak yönetir.

İyi bir kullanıcı deneyimi için etkileşimli jeton isteklerinin, uygulamanızdaki kullanıcı arayüzü tarafından başlatılması ve yetkilendirmenin ne için yapıldığını açıklaması önemlidir. Bunu yapmamanız durumunda kullanıcılarınız, oturum açmamışlarsa Chrome oturum açma ekranlarıyla birlikte bağlam içermeyen yetkilendirme istekleri alır. Özellikle uygulamanız ilk kez başlatıldığında getAuthToken öğesini etkileşimli olarak kullanmayın.

Not: Geri çağırma ile çağrıldığında bu işlev, bir nesne döndürmek yerine iki özelliği geri çağırmaya iletilen ayrı bağımsız değişkenler olarak döndürür.

Parametreler

  • ayrıntılar

    TokenDetails isteğe bağlı

    Jeton seçenekleri.

  • callback

    işlev isteğe bağlı

    callback parametresi şu şekilde görünür:

    (result: GetAuthTokenResult) => void

İadeler

  • Chrome 105 veya daha yeni bir sürüm

    Manifest'te belirtildiği gibi bir OAuth2 erişim jetonuyla çözümlenen bir Promise döndürür veya hata varsa reddeder. grantedScopes parametresi, Chrome 87'den beri doldurulmaktadır. Bu parametre, kullanılabilir olduğunda döndürülen jetona karşılık gelen verilen kapsamların listesini içerir.

    Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.

getProfileUserInfo()

Promise
chrome.identity.getProfileUserInfo(
  details?: ProfileDetails,
  callback?: function,
)
: Promise<ProfileUserInfo>

Bir profilde oturum açmış kullanıcının e-posta adresini ve karartılmış Gaia kimliğini alır.

identity.email manifest izni gerektirir. Aksi takdirde boş bir sonuç döndürür.

Bu API, iki açıdan identity.getAccounts'tan farklıdır. Döndürülen bilgiler çevrimdışı olarak kullanılabilir ve yalnızca profilin ana hesabı için geçerlidir.

Parametreler

  • ayrıntılar

    ProfileDetails isteğe bağlı

    Chrome 84+

    Profil seçenekleri.

  • callback

    işlev isteğe bağlı

    callback parametresi şu şekilde görünür:

    (userInfo: ProfileUserInfo) => void

İadeler

  • Chrome 106 veya daha yeni bir sürüm

    Bir Promise döndürür. Bu Promise, birincil Chrome hesabının ProfileUserInfo ile çözümlenir veya verilen details ile hesap yoksa boş bir ProfileUserInfo ile çözümlenir.

    Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.

getRedirectURL()

chrome.identity.getRedirectURL(
  path?: string,
)
: string

launchWebAuthFlow içinde kullanılacak bir yönlendirme URL'si oluşturur.

Oluşturulan URL'ler, https://<app-id>.chromiumapp.org/* kalıbıyla eşleşir.

Parametreler

  • yol

    dize isteğe bağlı

    Oluşturulan URL'nin sonuna eklenen yol.

İadeler

  • dize

launchWebAuthFlow()

Promise
chrome.identity.launchWebAuthFlow(
  details: WebAuthFlowDetails,
  callback?: function,
)
: Promise<string | undefined>

Belirtilen URL'de bir kimlik doğrulama akışı başlatır.

Bu yöntem, bir web görünümü başlatıp sağlayıcının kimlik doğrulama akışındaki ilk URL'ye giderek Google dışı kimlik sağlayıcılarla kimlik doğrulama akışlarını etkinleştirir. Sağlayıcı, https://<app-id>.chromiumapp.org/* kalıbıyla eşleşen bir URL'ye yönlendirdiğinde pencere kapanır ve son yönlendirme URL'si callback işlevine iletilir.

İyi bir kullanıcı deneyimi için etkileşimli kimlik doğrulama akışlarının, uygulamanızdaki kullanıcı arayüzü tarafından başlatılması ve yetkilendirmenin ne için yapıldığının açıklanması önemlidir. Bunu yapmazsanız kullanıcılarınız bağlamı olmayan yetkilendirme istekleri alır. Özellikle, uygulamanız ilk kez başlatıldığında etkileşimli bir kimlik doğrulama akışı başlatmayın.

Parametreler

  • ayrıntılar

    WebAuth akışı seçenekleri.

  • callback

    işlev isteğe bağlı

    callback parametresi şu şekilde görünür:

    (responseUrl?: string) => void

    • responseUrl

      dize isteğe bağlı

İadeler

  • Promise<string | undefined>

    Chrome 106 veya daha yeni bir sürüm

    Uygulamanıza geri yönlendirilen URL ile çözümlenen bir Promise döndürür.

    Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.

removeCachedAuthToken()

Promise
chrome.identity.removeCachedAuthToken(
  details: InvalidTokenDetails,
  callback?: function,
)
: Promise<void>

OAuth2 erişim jetonunu Identity API'nin jeton önbelleğinden kaldırır.

Geçersiz olduğu tespit edilen erişim jetonları, önbellekten kaldırılması için removeCachedAuthToken'a iletilmelidir. Uygulama daha sonra getAuthToken ile yeni bir jeton alabilir.

Parametreler

  • ayrıntılar

    Jeton bilgileri.

  • callback

    işlev isteğe bağlı

    callback parametresi şu şekilde görünür:

    () => void

İadeler

  • Promise<void>

    Chrome 106 veya daha yeni bir sürüm

    Jeton önbellekten kaldırıldığında çözülen bir Promise döndürür.

    Promises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.

Etkinlikler

onSignInChanged

chrome.identity.onSignInChanged.addListener(
  callback: function,
)

Kullanıcının profilindeki bir hesabın oturum açma durumu değiştiğinde tetiklenir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    (account: AccountInfo, signedIn: boolean) => void