Bearer kimlik doğrulaması, her istekte gizli bir belirteç sunulmasını zorunlu kılarak HTTP tetikleyicisine erişimi kısıtlamanıza olanak tanır. Function Compute, belirteci yapılandırdığınız değerlerle karşılaştırır; bunun için harici bir kimlik sağlayıcısı gerekmez.
Nasıl çalışır?
Tetikleyiciye bir istek geldiğinde Function Compute aşağıdaki adımları izler:
Authorization: Bearer <token>üstbilgisini arar. Üstbilgi yoksa istek"Authorization header is expected but missing"hatasıyla reddedilir.Belirteç değerini ayıklar ve bu tetikleyici için saklanan tüm etkin belirteçlerle karşılaştırır.
Eşleşen bir belirteç bulursa erişime izin verir; aksi takdirde isteği
"access denied due to invalid bearer token"hatasıyla reddeder.
Bu kontrol işlev kodunuz çalıştırılmadan önce gerçekleşir; böylece yetkisiz istekler işlevinize asla ulaşmaz.
Ön koşullar
Başlamadan önce şunlara sahip olduğunuzdan emin olun:
Bir işlev. Bkz. İşlev oluşturma.
Bu işlev üzerinde bir HTTP tetikleyicisi. Bkz. HTTP tetikleyicisini yapılandırma.
Sınırlamalar
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Bearer kimlik doğrulamasını etkinleştirin
Function Compute konsolu üzerinde oturum açın. Sol gezinme bölmesinde Functions seçeneğine tıklayın.
Üst gezinme çubuğunda bir bölge seçin. Yönetmek istediğiniz işleve tıklayın.
İşlev ayrıntıları sayfasında Triggers sekmesine tıklayın. HTTP tetikleyicisinin Actions sütununda Edit seçeneğine tıklayın.
Tetikleyiciyi Düzenle panelinde Authentication Method değerini Bearer Authentication olarak, Token Type değerini ise Opaque olarak ayarlayın.
-
Authentication Token bölümünde, belirteç değerinizi
tokenDataalanına girin. Birden çok belirteç yapılandırmak için aşağıdaki JSON yapısını kullanın:UyarıAşağıdaki
tokenDatadeğerleri yer tutucudur. Kaydetmeden önce bunları kendi belirteç değerlerinizle değiştirin. Örnek değerleri üretim ortamında kullanmayın.{ "tokens": [ { "enable": true, "tokenData": "<your-token-value>", "tokenName": "<your-token-name>" }, { "enable": true, "tokenData": "<your-second-token-value>", "tokenName": "<your-second-token-name>" } ] }
Alan
Açıklama
ÖrnektokenData
Gizli belirteç dizesi (32–128 karakter)token-8g***5tokenName
Bu belirteç için benzersiz bir etiketprimary-tokenenable
Belirtecin etkin olup olmadığıtrueveyafalseBir belirteci silmeden devre dışı bırakmak için
"enable": falsedeğerini ayarlayın. -
OK seçeneğine tıklayın. Bu tetikleyici için Bearer kimlik doğrulaması artık etkindir.

Yapılandırmayı doğrulayın
Üretim ortamında her zaman HTTPS kullanın. HTTP, belirteçleri düz metin olarak iletir ve bu durum ifşa riski taşır. Function Compute, HTTP kullanımından kaynaklanan güvenlik sorunlarından sorumlu değildir.
Authorization üstbilgisinde belirtecinizi içeren bir test isteği gönderin:
curl --data your-data -X POST \
-H "Authorization: Bearer <your-token-value>" \
https://<your-http-trigger-endpoint>
Başarılı bir yanıt, işlevinizin isteği aldığını doğrular. Bir hata alırsanız bkz. Sorun giderme.
Güvenlik
Kesinti olmadan belirteçleri döndürün
Her tetikleyici en fazla 20 belirteci destekler; bu nedenle çağrıları kesintiye uğratmadan bir belirteci döndürebilirsiniz:
Tetikleyiciye yeni bir belirteç ekleyin (eski belirteci etkin tutun).
İstemcilerinizi yeni belirteci göndermek üzere güncelleyin.
Tüm istemciler yeni belirteci kullanmaya başladıktan sonra eski belirtecin
enablealanınıfalseolarak ayarlayın veya belirteci kaldırın.
Bu sıfır kesintili yaklaşım, hem planlı döndürmeler hem de bir belirtecin ele geçirilmesi durumunda olay müdahalesi için geçerlidir.
Belirteç yönetimi sorumlulukları
Function Compute belirteçlerinizi depolar ve doğrular. Aşağıdakilerden siz sorumlusunuz:
Sızdırılan veya güvenliği ihlal edilen belirteçlerin döndürülmesi
Uzun süre kullanımda kalan belirteçlerin proaktif olarak döndürülmesi
Uzun ve rastgele belirteç değerleri oluşturma — öngörülebilir kombinasyonlardan kaçının
Sorun giderme
"Authorization header is expected but missing"
İstek, Authorization üstbilgisi olmadan tetikleyiciye ulaştı. İsteğinize üstbilgiyi ekleyin:
Authorization: Bearer <your-token-value>
"access denied due to invalid bearer token"
Belirteç mevcuttu ancak tetikleyicideki hiçbir etkin belirteçle eşleşmedi. Özel karakterler dahil olmak üzere tam tokenData değerini gönderdiğinizden emin olun.
Faturalama
Bearer kimlik doğrulamasının ek bir maliyeti yoktur. Function Compute, Bearer kimlik doğrulamasının etkin olup olmadığından bağımsız olarak ağ geçidi özelliğini standart işlev çağrı sayısı kapsamında faturalandırır.