Skip to content

Commit 0d12284

Browse files
authored
Merge pull request #2618 from PatrickFarley/freshness-pass
freshness pt 2
2 parents 7c359b9 + aa8a82f commit 0d12284

20 files changed

+153
-129
lines changed

articles/ai-services/computer-vision/concept-liveness-abuse-monitoring.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ manager: nitinme
99
ms.service: azure-ai-vision
1010
ms.subservice: azure-ai-face
1111
ms.topic: conceptual
12-
ms.date: 11/05/2023
12+
ms.date: 01/29/2025
1313
ms.author: pafarley
1414
ms.custom:
1515
- ignite-2023
@@ -20,21 +20,21 @@ feedback_help_link_url: https://learn.microsoft.com/answers/tags/156/azure-face
2020

2121
Azure AI Face liveness detection lets you detect and mitigate instances of recurring content and/or behaviors that indicate a violation of the [Code of Conduct](/legal/cognitive-services/face/code-of-conduct?context=/azure/ai-services/computer-vision/context/context) or other applicable product terms. This guide shows you how to work with these features to ensure your application is compliant with Azure policy.
2222

23-
Details on how data is handled can be found on the [Data, Privacy and Security](/legal/cognitive-services/openai/data-privacy?context=/azure/ai-services/openai/context/context) page.
23+
Details on how data is handled can be found on the [Data, Privacy, and Security](/legal/cognitive-services/openai/data-privacy?context=/azure/ai-services/openai/context/context) page.
2424

2525
[!INCLUDE [liveness-sdk-gate](./includes/liveness-sdk-gate.md)]
2626

2727
## Components of abuse monitoring
2828

2929
There are several components to Face liveness abuse monitoring:
30-
- **Session management**: Your backend application system creates liveness detection sessions on behalf of your end-users. The Face service issues authorization tokens for a particular session, and each is valid for a limited number of API calls. When the end-user encounters a failure during liveness detection, a new token is requested. This allows the backend application to assess the risk of allowing additional liveness retries. An excessive number of retries may indicate a brute force adversarial attempt to bypass the liveness detection system.
30+
- **Session management**: Your backend application system creates liveness detection sessions on behalf of your end-users. The Face service issues authorization tokens for a particular session, and each is valid for a limited number of API calls. When the end-user encounters a failure during liveness detection, a new token is requested. This allows the backend application to assess the risk of allowing more liveness retries. An excessive number of retries may indicate a brute force adversarial attempt to bypass the liveness detection system.
3131
- **Temporary correlation identifier**: The session creation process prompts you to assign a temporary 128-bit correlation GUID (globally unique identifier) for each end-user of your application system. This lets you associate each session with an individual. Classifier models on the service backend can detect presentation attack cues and observe failure patterns across the usage of a particular GUID. This GUID must be resettable on demand to support the manual override of the automated abuse mitigation system.
3232
- **Abuse pattern capture**: Azure AI Face liveness detection service looks at customer usage patterns and employs algorithms and heuristics to detect indicators of potential abuse. Detected patterns consider, for example, the frequency and severity at which presentation attack content is detected in a customer's image capture.
3333
- **Human review and decision**: When the correlation identifiers are flagged through abuse pattern capture as described above, no further sessions can be created for those identifiers. You should allow authorized employees to assess the traffic patterns and either confirm or override the determination based on predefined guidelines and policies. If human review concludes that an override is needed, you should generate a new temporary correlation GUID for the individual in order to generate more sessions.
3434
- **Notification and action**: When a threshold of abusive behavior has been confirmed based on the preceding steps, the customer should be informed of the determination by email. Except in cases of severe or recurring abuse, customers typically are given an opportunity to explain or remediate—and implement mechanisms to prevent the recurrence of—the abusive behavior. Failure to address the behavior, or recurring or severe abuse, may result in the suspension or termination of your Limited Access eligibility for Azure AI Face resources and/or capabilities.
3535

36-
## Next steps
36+
## Related content
3737

3838
- [Learn more about understanding and mitigating risks associated with identity management](/azure/security/fundamentals/identity-management-overview)
39-
- [Learn more about how data is processed in connection with abuse monitoring](/legal/cognitive-services/face/data-privacy-security?context=%2Fazure%2Fai-services%2Fcomputer-vision%2Fcontext%2Fcontext)
39+
- [Learn more about how data is processed for abuse monitoring](/legal/cognitive-services/face/data-privacy-security?context=%2Fazure%2Fai-services%2Fcomputer-vision%2Fcontext%2Fcontext)
4040
- [Learn more about supporting human judgment in your application system](/legal/cognitive-services/face/characteristics-and-limitations?context=%2Fazure%2Fai-services%2Fcomputer-vision%2Fcontext%2Fcontext#design-the-system-to-support-human-judgment)

articles/ai-services/computer-vision/enrollment-overview.md

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,26 +7,26 @@ manager: nitinme
77

88
ms.service: azure-ai-vision
99
ms.subservice: azure-ai-face
10-
ms.topic: best-practice
11-
ms.date: 02/14/2024
10+
ms.topic: conceptual
11+
ms.date: 01/29/2025
1212
ms.author: pafarley
1313
feedback_help_link_url: https://learn.microsoft.com/answers/tags/156/azure-face
1414
---
1515

1616
# Best practices for adding users to a Face service
1717

18-
In order to use the Azure AI Face API for face verification or identification, you need to enroll faces into a **LargePersonGroup** or similar [data structure](/azure/ai-services/computer-vision/concept-face-recognition-data-structures). This deep-dive demonstrates best practices for gathering meaningful consent from users and example logic to create high-quality enrollments that will optimize recognition accuracy.
18+
In order to use the Azure AI Face API for face verification or identification, you need to enroll faces into a **LargePersonGroup** or similar [data structure](/azure/ai-services/computer-vision/concept-face-recognition-data-structures). This deep-dive demonstrates best practices for gathering meaningful consent from users and example logic to create high-quality enrollments that optimize recognition accuracy.
1919

2020
## Meaningful consent
2121

2222
One of the key purposes of an enrollment application for facial recognition is to give users the opportunity to consent to the use of images of their face for specific purposes, such as access to a worksite. Because facial recognition technologies may be perceived as collecting sensitive personal data, it's especially important to ask for consent in a way that is both transparent and respectful. Consent is meaningful to users when it empowers them to make the decision that they feel is best for them.
2323

2424
Based on Microsoft user research, Microsoft's Responsible AI principles, and [external research](ftp://ftp.cs.washington.edu/tr/2000/12/UW-CSE-00-12-02.pdf), we have found that consent is meaningful when it offers the following to users enrolling in the technology:
2525

26-
* Awareness: Users should have no doubt when they are being asked to provide their face template or enrollment photos.
27-
* Understanding: Users should be able to accurately describe in their own words what they were being asked for, by whom, to what end, and with what assurances.
28-
* Freedom of choice: Users should not feel coerced or manipulated when choosing whether to consent and enroll in facial recognition.
29-
* Control: Users should be able to revoke their consent and delete their data at any time.
26+
* **Awareness**: Users should have no doubt when they're being asked to provide their face template or enrollment photos.
27+
* **Understanding**: Users should be able to accurately describe in their own words what they were being asked for, by whom, to what end, and with what assurances.
28+
* **Freedom of choice**: Users shouldn't feel coerced or manipulated when choosing whether to consent and enroll in facial recognition.
29+
* **Control**: Users should be able to revoke their consent and delete their data at any time.
3030

3131
This section offers guidance for developing an enrollment application for facial recognition. This guidance has been developed based on Microsoft user research in the context of enrolling individuals in facial recognition for building entry. Therefore, these recommendations might not apply to all facial recognition solutions. Responsible use for Face API depends strongly on the specific context in which it's integrated, so the prioritization and application of these recommendations should be adapted to your scenario.
3232

@@ -40,11 +40,14 @@ Before you design an enrollment flow, think about how the application you're bui
4040
|Category | Recommendations |
4141
|---|---|
4242
|Hardware | Consider the camera quality of the enrollment device. |
43-
|Recommended enrollment features | Include a log-on step with multifactor authentication. </br></br>Link user information like an alias or identification number with their face template ID from the Face API (known as person ID). This mapping is necessary to retrieve and manage a user's enrollment. Note: person ID should be treated as a secret in the application.</br></br>Set up an automated process to delete all enrollment data, including the face templates and enrollment photos of people who are no longer users of facial recognition technology, such as former employees. </br></br>Avoid auto-enrollment, as it does not give the user the awareness, understanding, freedom of choice, or control that is recommended for obtaining consent. </br></br>Ask users for permission to save the images used for enrollment. This is useful when there is a model update since new enrollment photos will be required to re-enroll in the new model about every 10 months. If the original images aren't saved, users will need to go through the enrollment process from the beginning.</br></br>Allow users to opt out of storing photos in the system. To make the choice clearer, you can add a second consent request screen for saving the enrollment photos. </br></br>If photos are saved, create an automated process to re-enroll all users when there is a model update. Users who saved their enrollment photos will not have to enroll themselves again. </br></br>Create an app feature that allows designated administrators to override certain quality filters if a user has trouble enrolling. |
43+
|Recommended enrollment features | Include a sign-in step with multifactor authentication. </br></br>Link user information like an alias or identification number with their face template ID from the Face API (known as person ID). This mapping is necessary to retrieve and manage a user's enrollment. Note: person ID should be treated as a secret in the application.</br></br>Set up an automated process to delete all enrollment data, including the face templates and enrollment photos of people who are no longer users of facial recognition technology, such as former employees. </br></br>Avoid auto-enrollment, as it does not give the user the awareness, understanding, freedom of choice, or control that is recommended for obtaining consent. </br></br>Ask users for permission to save the images used for enrollment. This is useful when there is a model update since new enrollment photos will be required to re-enroll in the new model about every 10 months. If the original images aren't saved, users need to go through the enrollment process from the beginning. </br></br>Allow users to opt out of storing photos in the system. To make the choice clearer, you can add a second consent request screen for saving the enrollment photos. </br></br>If photos are saved, create an automated process to re-enroll all users when there is a model update. Users who saved their enrollment photos won't have to enroll themselves again. </br></br>Create an app feature that allows designated administrators to override certain quality filters if a user has trouble enrolling. |
4444
|Security | Azure AI services follow [best practices](../cognitive-services-virtual-networks.md?tabs=portal) for encrypting user data at rest and in transit. The following are other practices that can help uphold the security promises you make to users during the enrollment experience. </br></br>Take security measures to ensure that no one has access to the person ID at any point during enrollment. Note: PersonID should be treated as a secret in the enrollment system. </br></br>Use [role-based access control](/azure/role-based-access-control/overview) with Azure AI services. </br></br>Use token-based authentication and/or shared access signatures (SAS) over keys and secrets to access resources like databases. By using request or SAS tokens, you can grant limited access to data without compromising your account keys, and you can specify an expiry time on the token. </br></br>Never store any secrets, keys, or passwords in your app. |
4545
|User privacy |Provide a range of enrollment options to address different levels of privacy concerns. Do not mandate that people use their personal devices to enroll into a facial recognition system. </br></br>Allow users to re-enroll, revoke consent, and delete data from the enrollment application at any time and for any reason. |
4646
|Accessibility |Follow accessibility standards (for example, [ADA](https://www.ada.gov/regs2010/2010ADAStandards/2010ADAstandards.htm) or [W3C](https://www.w3.org/TR/WCAG21/)) to ensure the application is usable by people with mobility or visual impairments. |
4747

48-
## Next steps
48+
## Next step
4949

50-
Follow the [Build an enrollment app](Tutorials/build-enrollment-app.md) guide to get started with a sample enrollment app. Then customize it or write your own app to suit the needs of your product.
50+
Follow the Build enrollment app guide to get started with a sample enrollment app. Then customize it or write your own app to suit the needs of your product.
51+
52+
[!div class="nextstepaction"]
53+
[Build an enrollment app](Tutorials/build-enrollment-app.md)

articles/ai-services/computer-vision/how-to/identity-access-token.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,12 @@ description: Learn how ISVs can manage the Face API usage of their clients by is
55
#services: cognitive-services
66
author: PatrickFarley
77
manager: nitinme
8+
#customer intent: As an ISV, I want to manage Face API usage for my clients so that they can use Face features without formal approval.
89

910
ms.service: azure-ai-vision
1011
ms.subservice: azure-ai-face
1112
ms.topic: how-to
12-
ms.date: 03/07/2024
13+
ms.date: 01/29/2025
1314
ms.author: pafarley
1415
feedback_help_link_url: https://learn.microsoft.com/answers/tags/156/azure-face
1516
---
@@ -25,6 +26,12 @@ The limited access token feature is a part of the existing Azure AI Services tok
2526
> [!IMPORTANT]
2627
> Only ISVs that pass the gating requirements will be given access to this feature. To request approval, contact [[email protected]](mailto:[email protected]).
2728
29+
## Prerequisites
30+
31+
* [cURL](https://curl.se/) installed (or another tool that can make HTTP requests).
32+
* The ISV needs to have either an [Azure AI Face](https://portal.azure.com/#view/Microsoft_Azure_ProjectOxford/CognitiveServicesHub/~/Face) resource or an [Azure AI services multi-service](https://portal.azure.com/#view/Microsoft_Azure_ProjectOxford/CognitiveServicesHub/~/AllInOne) resource.
33+
* The client needs to have an [Azure AI Face](https://portal.azure.com/#view/Microsoft_Azure_ProjectOxford/CognitiveServicesHub/~/Face) resource.
34+
2835
## Example use case
2936

3037
An example company sells software that uses the Azure AI Face service to operate door access security systems. Their clients, individual manufacturers of door devices, subscribe to the software and run it on their devices. These client companies want to make Face API calls from their devices to perform Limited Access operations like face identification. By relying on access tokens from the ISV, they can bypass the formal approval process for face identification. The ISV, which has already been approved, can grant the client just-in-time access tokens.
@@ -35,11 +42,6 @@ The token-issuing ISV is responsible for ensuring that the tokens are used only
3542

3643
If the ISV learns that a client is using the LimitedAccessToken for non-approved purposes, the ISV should stop generating tokens for that customer. Microsoft can track the issuance and usage of LimitedAccessTokens, and we reserve the right to revoke an ISV's access to the **issueLimitedAccessToken** API if abuse is not addressed.
3744

38-
## Prerequisites
39-
40-
* [cURL](https://curl.se/) installed (or another tool that can make HTTP requests).
41-
* The ISV needs to have either an [Azure AI Face](https://portal.azure.com/#view/Microsoft_Azure_ProjectOxford/CognitiveServicesHub/~/Face) resource or an [Azure AI services multi-service](https://portal.azure.com/#view/Microsoft_Azure_ProjectOxford/CognitiveServicesHub/~/AllInOne) resource.
42-
* The client needs to have an [Azure AI Face](https://portal.azure.com/#view/Microsoft_Azure_ProjectOxford/CognitiveServicesHub/~/Face) resource.
4345

4446
## Step 1: ISV obtains client's Face resource ID
4547

0 commit comments

Comments
 (0)