Yüz Tanıma için sınırlı erişim belirteçleri kullanma

Bağımsız yazılım satıcıları (ISV'ler), normalde geçitli Yüz Tanıma özelliklerine erişim izni veren erişim belirteçleri vererek istemcilerinin Yüz Tanıma API'si kullanımını yönetebilir. Bu, istemci şirketlerinin resmi onay sürecinden geçmek zorunda kalmadan Yüz Tanıma API'sini kullanmasına olanak tanır.

Bu kılavuzda erişim belirteçlerinin nasıl oluşturulacağı, onaylanmış bir ISV'yseniz ve istemciyseniz belirteçlerin nasıl kullanılacağı gösterilmektedir.

Sınırlı erişim belirteci özelliği, mevcut Azure AI hizmetleri belirteç hizmetinin bir parçasıdır. Onaylı senaryolar için Sınırlı Erişim geçidini atlamak amacıyla yeni bir işlem ekledik. Bu özelliğe yalnızca gating gereksinimlerini geçen ISV'lere erişim verilir.

Örnek kullanım örneği

Örnek bir şirket, kapı erişim güvenlik sistemlerini çalıştırmak için Azure AI Yüz Tanıma hizmetini kullanan yazılımlar satıyor. Müşterileri, tek tek kapı cihazı üreticileri, yazılıma abone olur ve cihazlarında çalıştırır. Bu istemci şirketler, yüz tanıma gibi Sınırlı Erişim işlemleri gerçekleştirmek için cihazlarından Yüz Tanıma API'si çağrıları yapmak istiyor. ISV'den erişim belirteçlerine güvenerek yüz belirleme için resmi onay sürecini atlayabilirler. Zaten onaylanmış olan ISV, istemciye tam zamanında erişim belirteçleri verebilir.

Sorumluluk beklentisi

Belirteç veren ISV, belirteçlerin yalnızca onaylanan amaç için kullanılmasını sağlamakla sorumludur.

ISV, bir istemcinin LimitedAccessToken'i onaylanmamış amaçlarla kullandığını öğrenirse, ISV'nin bu müşteri için belirteç oluşturmayı durdurması gerekir. Microsoft, LimitedAccessTokens'in verilmesini ve kullanımını izleyebilir ve uygunsuz kullanım giderilmezse isv'nin issueLimitedAccessToken API'sine erişimini iptal etme hakkını saklıyoruz.

Önkoşullar

1. Adım: ISV istemcinin Yüz Tanıma kaynak kimliğini aldı

ISV, kendi güvenli bulut hizmeti (erişim belirtecini oluşturur) ile istemcinin cihazında çalışan uygulamaları arasında bir iletişim kanalı ayarlamalıdır. İstemcinin Yüz Tanıma kaynak kimliği, LimitedAccessToken oluşturmadan önce bilinmelidir.

Yüz Tanıma kaynak kimliği aşağıdaki biçime sahiptir:

/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.CognitiveServices/accounts/<face-resource-name>

Örneğin:

/subscriptions/dc4d27d9-ea49-4921-938f-7782a774e151/resourceGroups/client-rg/providers/Microsoft.CognitiveServices/accounts/client-face-api

2. Adım: ISV bir belirteç oluşturur

ISV'nin güvenli bir ortamda çalışan bulut hizmeti, son müşterisinin bilinen Yüz Tanıma kaynak kimliğini kullanarak issueLimitedAccessToken API'sini çağırır.

issueLimitedAccessToken API'sini çağırmak için aşağıdaki cURL komutunu bir metin düzenleyicisine kopyalayın.

curl -X POST 'https://<isv-endpoint>/sts/v1.0/issueLimitedAccessToken?expiredTime=3600' \  
-H 'Ocp-Apim-Subscription-Key: <client-face-key>' \  
-H 'Content-Type: application/json' \  
-d '{  
    "resourceId": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.CognitiveServices/accounts/<face-resource-name>",  
    "featureFlags": ["Face.Identification", "Face.Verification"]  
}' 

Ardından aşağıdaki değişiklikleri yapın:

  1. öğesini ISV kaynağının uç noktasıyla değiştirin <isv-endpoint> . Örneğin, westus.api.cognitive.microsoft.com.
  2. İsteğe bağlı olarak, belirtecin süre sonu süresini saniye olarak ayarlamak için parametresini ayarlayın expiredTime . 60 ile 86400 arasında olmalıdır. Varsayılan değer 3600'dür (bir saat).
  3. değerini istemcinin Yüz Tanıma kaynağının anahtarıyla değiştirin <client-face-key> .
  4. değerini istemcinin Azure aboneliğinin abonelik kimliğiyle değiştirin <subscription-id> .
  5. değerini istemcinin kaynak grubunun adıyla değiştirin <resource-group-name> .
  6. değerini istemcinin Yüz Tanıma kaynağının adıyla değiştirin <face-resource-name> .
  7. Vermek istediğiniz erişim rolleri kümesine ayarlayın "featureFlags" . Kullanılabilir bayraklar , "Face.Verification"ve "LimitedAccess.HighRisk"şeklindedir"Face.Identification". ISV yalnızca Microsoft tarafından kendisine verilmiş olan izinleri verebilir. Örneğin, ISV'ye yüz tanıma erişimi verildiyse, istemci için Face.Identification için bir LimitedAccessToken oluşturabilir. Tüm belirteç oluşturma işlemleri ve kullanımları kullanım ve güvenlik amacıyla günlüğe kaydedilir.

Ardından, komutu bir terminal penceresine yapıştırın ve çalıştırın.

API, belirteci JSON web belirteci ()application/jwt biçiminde bir yanıt döndürmelidir200. LimitedAccessToken'ı incelemek istiyorsanız JWT kullanarak bunu yapabilirsiniz.

3. Adım: İstemci uygulaması belirteci kullanır

ISV'nin uygulaması daha sonra istemci adına gelecek Yüz Tanıma API'si istekleri için http isteği üst bilgisi olarak sınırlı erişim belirtecini geçirebilir. Bu, diğer kimlik doğrulama mekanizmalarından bağımsız olarak çalışır, bu nedenle istemcinin kişisel bilgileri ISV'ye sızdırılır.

Dikkat

İstemcinin, arka planda geçirilebileceği için belirteç değerinin farkında olması gerekmez. İstemci trafiği kesmek için bir web izleme aracı kullansaydı, LimitedAccessToken üst bilgisini görüntüleyebilirdi. Ancak belirtecin süresi kısa bir süre sonra dolduğundan, belirteçle yapabilecekleri işlem sınırlıdır. Bu risk bilinir ve kabul edilebilir olarak kabul edilir.

Her ISV için belirteci bulut hizmetinden istemci uygulamasına tam olarak nasıl geçirdiğine karar verir.

Erişim belirtecini kullanan örnek bir Yüz Tanıma API'si isteği şöyle görünür:

curl -X POST 'https://<client-endpoint>/face/v1.0/identify' \  
-H 'Ocp-Apim-Subscription-Key: <client-face-key>' \  
-H 'LimitedAccessToken: Bearer <token>' \  
-H 'Content-Type: application/json' \  
-d '{  
  "largePersonGroupId": "sample_group",  
  "faceIds": [  
    "c5c24a82-6845-4031-9d5d-978df9175426",  
    "65d083d4-9447-47d1-af30-b626144bf0fb"  
  ],  
  "maxNumOfCandidatesReturned": 1,  
  "confidenceThreshold": 0.5  
}'

Not

Uç nokta URL'si ve Yüz Tanıma anahtarı ISV'nin kaynağına değil istemcinin Yüz Tanıma kaynağına aittir. <token> bir HTTP isteği üst bilgisi olarak geçirilir.

Sonraki adımlar