Skip to content

Commit 73ff070

Browse files
author
JiayueHu
authored
Merge pull request #199053 from MicrosoftDocs/main
Build 2022 publishing
2 parents 79cdf10 + 0129ef0 commit 73ff070

File tree

1,403 files changed

+37481
-12368
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,403 files changed

+37481
-12368
lines changed

.openpublishing.publish.config.json

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -441,9 +441,15 @@
441441
"branch_mapping": {}
442442
},
443443
{
444-
"path_to_root": "azureml-examples-march-cli-preview",
444+
"path_to_root": "azureml-examples-sdk-preview",
445445
"url": "https://github.com/azure/azureml-examples",
446-
"branch": "march-cli-preview",
446+
"branch": "sdk-preview",
447+
"branch_mapping": {}
448+
},
449+
{
450+
"path_to_root": "azureml-examples-online-endpoint-vnet",
451+
"url": "https://github.com/azure/azureml-examples",
452+
"branch": "rsethur/mvnet",
447453
"branch_mapping": {}
448454
},
449455
{

.openpublishing.redirection.json

Lines changed: 169 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2738,6 +2738,16 @@
27382738
"redirect_url": "/azure/machine-learning/reference-yaml-deployment-batch.md",
27392739
"redirect_document_id": false
27402740
},
2741+
{
2742+
"source_path_from_root": "/articles/machine-learning/how-to-kubernetes-instance-type.md",
2743+
"redirect_url": "/azure/machine-learning/how-to-attach-kubernetes-anywhere",
2744+
"redirect_document_id": false
2745+
},
2746+
{
2747+
"source_path_from_root": "/articles/machine-learning/how-to-attach-arc-kubernetes.md",
2748+
"redirect_url": "/azure/machine-learning/how-to-attach-kubernetes-anywhere",
2749+
"redirect_document_id": false
2750+
},
27412751
{
27422752
"source_path_from_root": "/articles/machine-learning/reference-yaml-endpoint-managed-batch.md",
27432753
"redirect_url": "/azure/machine-learning/reference-yaml-endpoint-batch.md",
@@ -7968,6 +7978,96 @@
79687978
"redirect_url": "/azure/cognitive-services/containers/azure-container-instance-recipe",
79697979
"redirect_document_id": false
79707980
},
7981+
{
7982+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/overview.md",
7983+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/overview",
7984+
"redirect_document_id": true
7985+
},
7986+
{
7987+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/quickstart.md",
7988+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/quickstart",
7989+
"redirect_document_id": true
7990+
},
7991+
{
7992+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/service-limits.md",
7993+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/service-limits",
7994+
"redirect_document_id": true
7995+
},
7996+
{
7997+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/language-support.md",
7998+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/language-support",
7999+
"redirect_document_id": true
8000+
},
8001+
{
8002+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/glossary.md",
8003+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/glossary",
8004+
"redirect_document_id": true
8005+
},
8006+
{
8007+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/faq.md",
8008+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/faq",
8009+
"redirect_document_id": true
8010+
},
8011+
{
8012+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/fail-over.md",
8013+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/fail-over",
8014+
"redirect_document_id": true
8015+
},
8016+
{
8017+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/tutorials/cognitive-search.md",
8018+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/tutorials/cognitive-search",
8019+
"redirect_document_id": true
8020+
},
8021+
{
8022+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/how-to/call-api.md",
8023+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/how-to/call-api",
8024+
"redirect_document_id": true
8025+
},
8026+
{
8027+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/how-to/create-project.md",
8028+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/how-to/create-project",
8029+
"redirect_document_id": true
8030+
},
8031+
{
8032+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/how-to/deploy-model.md",
8033+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/how-to/deploy-model",
8034+
"redirect_document_id": true
8035+
},
8036+
{
8037+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/how-to/design-schema.md",
8038+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/how-to/design-schema",
8039+
"redirect_document_id": true
8040+
},
8041+
{
8042+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/how-to/improve-model.md",
8043+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/how-to/improve-model",
8044+
"redirect_document_id": true
8045+
},
8046+
{
8047+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/how-to/tag-data.md",
8048+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/how-to/tag-data",
8049+
"redirect_document_id": true
8050+
},
8051+
{
8052+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/how-to/train-model.md",
8053+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/how-to/train-model",
8054+
"redirect_document_id": true
8055+
},
8056+
{
8057+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/how-to/view-model-evaluation.md",
8058+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/how-to/view-model-evaluation",
8059+
"redirect_document_id": true
8060+
},
8061+
{
8062+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/concepts/data-formats.md",
8063+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/concepts/data-formats",
8064+
"redirect_document_id": true
8065+
},
8066+
{
8067+
"source_path_from_root": "/articles/cognitive-services/language-service/custom-classification/concepts/evaluation.md",
8068+
"redirect_url": "/azure/cognitive-services/language-service/custom-text-classification/concepts/evaluation-metrics",
8069+
"redirect_document_id": true
8070+
},
79718071
{
79728072
"source_path_from_root": "/articles/cognitive-services/language-service/concepts/migrate-from-text-analytics-v2.md",
79738073
"redirect_url": "/azure/cognitive-services/language-service/concepts/migrate-language-service-latest",
@@ -8015,8 +8115,8 @@
80158115
},
80168116
{
80178117
"source_path_from_root": "/articles/cognitive-services/text-analytics/How-tos/extractive-summarization.md",
8018-
"redirect_url": "/azure/cognitive-services/language-service/text-summarization/overview",
8019-
"redirect_document_id": true
8118+
"redirect_url": "/azure/cognitive-services/language-service/document-summarization/overview",
8119+
"redirect_document_id": false
80208120
},
80218121
{
80228122
"source_path_from_root": "/articles/cognitive-services/text-analytics/How-tos/text-analytics-how-to-install-containers.md",
@@ -20458,6 +20558,11 @@
2045820558
"redirect_url": "/azure/machine-learning/overview-what-happened-to-workbench",
2045920559
"redirect_document_id": false
2046020560
},
20561+
{
20562+
"source_path_from_root": "/articles/machine-learning/concept-azure-machine-learning-architecture.md",
20563+
"redirect_url": "/azure/machine-learning/concept-azure-machine-learning-v2",
20564+
"redirect_document_id": true
20565+
},
2046120566
{
2046220567
"source_path_from_root": "/articles/machine-learning/service/how-to-build-deploy-image-similarity-models.md",
2046320568
"redirect_url": "/azure/machine-learning/overview-what-happened-to-workbench",
@@ -21008,6 +21113,7 @@
2100821113
"redirect_url": "/azure/machine-learning/tutorial-auto-train-models",
2100921114
"redirect_document_id": true
2101021115
},
21116+
2101121117
{
2101221118
"source_path_from_root": "/articles/machine-learning/service/tutorial-data-prep.md",
2101321119
"redirect_url": "/azure/machine-learning/tutorial-auto-train-models",
@@ -21058,6 +21164,41 @@
2105821164
"redirect_url": "/azure/machine-learning/tutorial-pipeline-batch-scoring-classification",
2105921165
"redirect_document_id": false
2106021166
},
21167+
{
21168+
"source_path_from_root": "/articles/machine-learning/reference-azure-machine-learning-cli.md",
21169+
"redirect_url": "/azure/machine-learning/v1/reference-azure-machine-learning-cli",
21170+
"redirect_document_id": false
21171+
},
21172+
{
21173+
"source_path_from_root": "/articles/machine-learning/reference-pipeline-yaml.md",
21174+
"redirect_url": "/azure/machine-learning/v1/reference-pipeline-yaml",
21175+
"redirect_document_id": false
21176+
},
21177+
{
21178+
"source_path_from_root": "/articles/machine-learning/how-to-deploy-azure-container-instance.md",
21179+
"redirect_url": "/azure/machine-learning/v1/how-to-deploy-azure-container-instance",
21180+
"redirect_document_id": false
21181+
},
21182+
{
21183+
"source_path_from_root": "/articles/machine-learning/how-to-deploy-profile-model.md",
21184+
"redirect_url": "/azure/machine-learning/v1/how-to-deploy-profile-model",
21185+
"redirect_document_id": false
21186+
},
21187+
{
21188+
"source_path_from_root": "/articles/machine-learning/how-to-deploy-azure-kubernetes-service.md",
21189+
"redirect_url": "/azure/machine-learning/v1/how-to-deploy-azure-kubernetes-service",
21190+
"redirect_document_id": false
21191+
},
21192+
{
21193+
"source_path_from_root": "/articles/machine-learning/how-to-deploy-mlflow-models.md",
21194+
"redirect_url": "/azure/machine-learning/v1/how-to-deploy-mlflow-models",
21195+
"redirect_document_id": false
21196+
},
21197+
{
21198+
"source_path_from_root": "/articles/machine-learning/how-to-use-mlflow.md",
21199+
"redirect_url": "/azure/machine-learning/v1/how-to-use-mlflow",
21200+
"redirect_document_id": false
21201+
},
2106121202
{
2106221203
"source_path_from_root": "/articles/machine-learning/service/tutorial-pipeline-batch-scoring-classification.md",
2106321204
"redirect_url": "/azure/machine-learning/tutorial-pipeline-batch-scoring-classification",
@@ -21088,11 +21229,16 @@
2108821229
"redirect_url": "/azure/machine-learning/tutorial-train-models-with-aml",
2108921230
"redirect_document_id": true
2109021231
},
21091-
{
21232+
{
2109221233
"source_path_from_root": "/articles/machine-learning/tutorial-pipeline-batch-scoring-classification.md",
2109321234
"redirect_url": "/azure/machine-learning/tutorial-pipeline-python-sdk",
2109421235
"redirect_document_id": false
2109521236
},
21237+
{
21238+
"source_path_from_root": "/articles/machine-learning/how-to-attach-compute-targets.md",
21239+
"redirect_url": "/azure/machine-learning/v1/how-to-attach-compute-targets",
21240+
" redirect_document_id": true
21241+
},
2109621242
{
2109721243
"source_path_from_root": "/articles/cognitive-services/QnAMaker/reference-precise-answering.md",
2109821244
"redirect_url": "/azure/cognitive-services/language/custom-question-answering/concepts/precise-answering",
@@ -43052,6 +43198,26 @@
4305243198
"source_path_from_root": "/articles/cognitive-services/translator/custom-translator/terminology.md",
4305343199
"redirect_url": "/azure/cognitive-services/translator/custom-translator/key-terms",
4305443200
"redirect_document_id": false
43201+
},
43202+
{
43203+
"source_path_from_root": "/articles/cognitive-services/language-service/text-summarization/how-to/call-api.md",
43204+
"redirect_url": "/azure/cognitive-services/language-service/summarization/how-to/document-summarization",
43205+
"redirect_document_id": true
43206+
},
43207+
{
43208+
"source_path_from_root": "/articles/cognitive-services/language-service/text-summarization/language-support.md",
43209+
"redirect_url": "/azure/cognitive-services/language-service/summarization/language-support",
43210+
"redirect_document_id": true
43211+
},
43212+
{
43213+
"source_path_from_root": "/articles/cognitive-services/language-service/text-summarization/overview.md",
43214+
"redirect_url": "/azure/cognitive-services/language-service/summarization/overview",
43215+
"redirect_document_id": true
43216+
},
43217+
{
43218+
"source_path_from_root": "/articles/cognitive-services/language-service/text-summarization/quickstart.md",
43219+
"redirect_url": "/azure/cognitive-services/language-service/summarization/quickstart",
43220+
"redirect_document_id": true
4305543221
}
4305643222
]
4305743223
}

articles/active-directory/develop/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@
3333
- name: Permissions and access
3434
displayName: Access control
3535
items:
36+
- name: Permissions and consent overview
37+
href: permissions-consent-overview.md
3638
- name: "Authorization options: ACLs, RBAC, ABAC"
3739
href: authorization-basics.md
3840
- name: RBAC for app developers
36.4 KB
Loading
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
---
2+
title: Overview of permissions and consent in the Microsoft identity platform
3+
description: Learn about the foundational concepts and scenarios around consent and permissions in the Microsoft identity platform
4+
services: active-directory
5+
author: omondiatieno
6+
manager: CelesteDG
7+
8+
ms.service: active-directory
9+
ms.subservice: develop
10+
ms.workload: identity
11+
ms.custom: event-tier1-build-2022
12+
ms.topic: overview
13+
ms.date: 05/10/2022
14+
ms.author: jomondi
15+
ms.reviewer: jawoods, ludwignick, phsignor
16+
#Customer intent: As and a developer or admin in the Microsoft identity platform, I want to understand the basic concept about managing how applications access resources through the permissions and consent framework.
17+
---
18+
# Introduction to permissions and consent
19+
20+
To _access_ a protected resource like email or calendar data, your application needs the resource owner's _authorization_. The resource owner can _consent_ to or deny your app's request. Understanding these foundational concepts will help you build more secure and trustworthy applications that request only the access they need, when they need it, from its users and administrators.
21+
22+
## Access scenarios
23+
24+
As an application developer, you must identify how your application will access data. The application can use delegated access, acting on behalf of a signed-in user, or direct access, acting only as the application's own identity.
25+
26+
![Image shows illustration of access scenarios.](./media/permissions-consent-overview/access-scenarios.png)
27+
28+
### Delegated access (access on behalf of a user)
29+
30+
In this access scenario, a user has signed into a client application. The client application accesses the resource on behalf of the user. Delegated access requires delegated permissions. Both the client and the user must be authorized separately to make the request.
31+
32+
For the client app, the correct delegated permissions must be granted. Delegated permissions can also be referred to as scopes. Scopes are permissions of a given resource that the client application exercises on behalf of a user. They're strings that represent what the application wants to do on behalf of the user. For more information about scopes, see [scopes and permissions](v2-permissions-and-consent.md#scopes-and-permissions).
33+
34+
For the user, the authorization relies on the privileges that the user has been granted for them to access the resource. For example, the user could be authorized to access directory resources by [Azure Active Directory (Azure AD) role-based access control (RBAC)](../roles/custom-overview.md) or to access mail and calendar resources by [Exchange Online RBAC](/exchange/permissions-exo/permissions-exo).
35+
36+
### Direct access (App-only access)
37+
38+
In this access scenario, the application acts on its own with no user signed in. Application access is used in scenarios such as automation, and backup. This scenario includes apps that run as background services or daemons. It's appropriate when it's undesirable to have a specific user signed in, or when the data required can't be scoped to a single user.
39+
40+
Direct access may require application permissions but this isn't the only way for granting an application direct access. Application permissions can be referred to as app roles. When app roles are granted to other applications, they can be called applications permissions. The appropriate application permissions or app roles must be granted to the application for it to access the resource. For more information about assigning app roles to applications, see [App roles for applications](howto-add-app-roles-in-azure-ad-apps.md).
41+
42+
## Types of permissions
43+
44+
**Delegated permissions** are used in the delegated access scenario. They're permissions that allow the application to act on a user's behalf. The application will never be able to access anything users themselves couldn't access.
45+
46+
For example, imagine an application that has been granted the Files.Read.All delegated permission on behalf of Tom, the user. The application will only be able to read files that Tom can personally access.
47+
48+
**Application permissions** are used in the direct access scenario, without a signed-in user present. The application will be able to access any data that the permission is associated with. For example, an application granted the Files.Read.All application permission will be able to read any file in the tenant. Only an administrator or owner of the service principal can consent to application permissions.
49+
50+
There are other ways in which applications can be granted authorization for direct access. For example, an application can be assigned an Azure AD RBAC role.
51+
52+
## Consent
53+
One way that applications are granted permissions is through consent. Consent is a process where users or admins authorize an application to access a protected resource. For example, when a user attempts to sign into an application for the first time, the application can request permission to see the user's profile and read the contents of the user's mailbox. The user sees the list of permissions the app is requesting through a consent prompt.
54+
55+
The key details of a consent prompt are the list of permissions the application requires and the publisher information. For more information about the consent prompt and the consent experience for both admins and end-users, see [application consent experience](application-consent-experience.md).
56+
57+
### User consent
58+
59+
User consent happens when a user attempts to sign into an application. The user provides their sign-in credentials. These credentials are checked to determine whether consent has already been granted. If no previous record of user or admin consent for the required permissions exists, the user is shown a consent prompt and asked to grant the application the requested permissions. In many cases, an admin may be required to grant consent on behalf of the user.
60+
61+
### Administrator consent
62+
63+
Depending on the permissions they require, some applications might require an administrator to be the one who grants consent. For example, application permissions can only be consented to by an administrator. Administrators can grant consent for themselves or for the entire organization. For more information about user and admin consent, see [user and admin consent overview](../manage-apps/consent-and-permissions-overview.md)
64+
65+
### Preauthorization
66+
67+
Preauthorization allows a resource application owner to grant permissions without requiring users to see a consent prompt for the same set of permissions that have been preauthorized. This way, an application that has been preauthorized won't ask users to consent to permissions. Resource owners can preauthorize client apps in the Azure portal or by using PowerShell and APIs, like Microsoft Graph.
68+
69+
## Next steps
70+
- [User and admin consent overview](../manage-apps/consent-and-permissions-overview.md)
71+
- [Scopes and permissions](v2-permissions-and-consent.md)

0 commit comments

Comments
 (0)