You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/active-directory/external-identities/customers/how-to-register-ciam-app.md
+36-22Lines changed: 36 additions & 22 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -24,7 +24,7 @@ During app registration, you specify the redirect URI. The redirect URI is the e
24
24
25
25
Azure AD for customers supports authentication for various modern application architectures, for example web app or single-page app. The interaction of each application type with the customer tenant is different, therefore, you must specify the type of application you want to register.
26
26
27
-
In this article, you’ll learn how to register an application in your customer tenant.
27
+
In this article, you learn how to register an application in your customer tenant.
28
28
29
29
## Prerequisites
30
30
@@ -34,9 +34,11 @@ In this article, you’ll learn how to register an application in your customer
34
34
## Choose your app type
35
35
36
36
# [Single-page app (SPA)](#tab/spa)
37
-
## How to register your Single-page app?
37
+
## Register your Single-page app
38
38
39
-
The following steps show you how to register your app in the admin center:
39
+
Azure AD for customers supports authentication for Single-page apps (SPAs).
40
+
41
+
The following steps show you how to register your SPA in the Microsoft Entra admin center:
40
42
41
43
1. Sign in to the [Microsoft Entra admin center](https://entra.microsoft.com/).
42
44
@@ -54,7 +56,7 @@ The following steps show you how to register your app in the admin center:
54
56
55
57
1. In the **Register an application page** that appears, enter your application's registration information:
56
58
57
-
1. In the **Name** section, enter a meaningful application name that will be displayed to users of the app, for example *ciam-client-app*.
59
+
1. In the **Name** section, enter a meaningful application name that is displayed to users of the app, for example *ciam-client-app*.
58
60
59
61
1. Under **Supported account types**, select **Accounts in this organizational directory only**.
60
62
@@ -66,12 +68,15 @@ The following steps show you how to register your app in the admin center:
66
68
67
69
[!INCLUDE [add about redirect URI](../customers/includes/register-app/about-redirect-url.md)]
68
70
69
-
### Add delegated permissions
71
+
### Grant delegated permissions
70
72
This app signs in users. You can add delegated permissions to it, by following the steps below:
71
73
72
74
[!INCLUDE [grant permision for signing in users](../customers/includes/register-app/grant-api-permission-sign-in.md)]
73
75
74
-
### To call an API follow the steps below (optional):
76
+
### Grant API permissions (optional):
77
+
78
+
If your SPA needs to call an API, you must grant your SPA API permissions so it can call the API. You must also [register the web API](how-to-register-ciam-app.md?tabs=webapi) that you need to call.
79
+
75
80
[!INCLUDE [grant permisions for calling an API](../customers/includes/register-app/grant-api-permission-call-api.md)]
76
81
77
82
If you'd like to learn how to expose the permissions by adding a link, go to the [Web API](how-to-register-ciam-app.md?tabs=webapi) section.
@@ -82,9 +87,11 @@ If you'd like to learn how to expose the permissions by adding a link, go to the
82
87
-[Sign in users in a sample vanilla JavaScript single-page app](how-to-single-page-app-vanillajs-sample-sign-in.md)
83
88
84
89
# [Web app](#tab/webapp)
85
-
## How to register your Web app?
90
+
## Register your Web app
91
+
92
+
Azure AD for customers supports authentication for web apps.
86
93
87
-
The following steps show you how to register your app in the admin center:
94
+
The following steps show you how to register your web app in the Microsoft Entra admin center:
88
95
89
96
1. Sign in to the [Microsoft Entra admin center](https://entra.microsoft.com/).
90
97
@@ -102,11 +109,11 @@ The following steps show you how to register your app in the admin center:
102
109
103
110
1. In the **Register an application page** that appears, enter your application's registration information:
104
111
105
-
1. In the **Name** section, enter a meaningful application name that will be displayed to users of the app, for example *ciam-client-app*.
112
+
1. In the **Name** section, enter a meaningful application name that is displayed to users of the app, for example *ciam-client-app*.
106
113
107
114
1. Under **Supported account types**, select **Accounts in this organizational directory only**.
108
115
109
-
1. Under **Redirect URI (optional)**, select **Web** and then, in the URL box, enter `http://localhost:3000/`.
116
+
1. Under **Redirect URI (optional)**, select **Web** and then, in the URL box, enter a URL such as, `http://localhost:3000/`.
110
117
111
118
1. Select **Register**.
112
119
@@ -122,7 +129,10 @@ This app signs in users. You can add delegated permissions to it, by following t
122
129
### Create a client secret
123
130
[!INCLUDE [add a client secret](../customers/includes/register-app/add-app-client-secret.md)]
124
131
125
-
### To call an API follow the steps below (optional):
132
+
### Grant API permissions (optional)
133
+
134
+
If your web app needs to call an API, you must grant your web app API permissions so it can call the API. You must also [register the web API](how-to-register-ciam-app.md?tabs=webapi) that you need to call.
135
+
126
136
[!INCLUDE [grant permissions for calling an API](../customers/includes/register-app/grant-api-permission-call-api.md)]
127
137
128
138
## Next steps
@@ -131,15 +141,16 @@ This app signs in users. You can add delegated permissions to it, by following t
131
141
-[Sign in users in a sample Node.js web app](how-to-web-app-node-sample-sign-in.md)
@@ -148,9 +159,9 @@ This app signs in users. You can add delegated permissions to it, by following t
148
159
-[Create a sign-up and sign-in user flow](how-to-user-flow-sign-up-sign-in-customers.md)
149
160
150
161
# [Desktop or Mobile app](#tab/desktopmobileapp)
151
-
## How to register your Desktop or Mobile app?
162
+
## Register your Desktop or Mobile app
152
163
153
-
The following steps show you how to register your app in the admin center:
164
+
The following steps show you how to register your app in the Microsoft Entra admin center:
154
165
155
166
1. Sign in to the [Microsoft Entra admin center](https://entra.microsoft.com/).
156
167
@@ -168,7 +179,7 @@ The following steps show you how to register your app in the admin center:
168
179
169
180
1. In the **Register an application page** that appears, enter your application's registration information:
170
181
171
-
1. In the **Name** section, enter a meaningful application name that will be displayed to users of the app, for example *ciam-client-app*.
182
+
1. In the **Name** section, enter a meaningful application name that is displayed to users of the app, for example *ciam-client-app*.
172
183
173
184
1. Under **Supported account types**, select **Accounts in this organizational directory only**.
174
185
@@ -181,7 +192,9 @@ The following steps show you how to register your app in the admin center:
181
192
### Add delegated permissions
182
193
[!INCLUDE [grant permission for signing in users](../customers/includes/register-app/grant-api-permission-sign-in.md)]
183
194
184
-
### To call an API follow the steps below (optional):
195
+
### Grant API permissions (optional)
196
+
197
+
If your mobile app needs to call an API, you must grant your mobile app API permissions so it can call the API. You must also [register the web API](how-to-register-ciam-app.md?tabs=webapi) that you need to call.
185
198
[!INCLUDE [grant permissions for calling an API](../customers/includes/register-app/grant-api-permission-call-api.md)]
186
199
187
200
## Next steps
@@ -190,12 +203,13 @@ The following steps show you how to register your app in the admin center:
190
203
-[Sign in users in a sample Electron desktop app](how-to-desktop-app-electron-sample-sign-in.md)
### To call an API follow the steps below (optional)
198
-
A daemon app signs-in as itself using the [OAuth 2.0 client credentials flow](/azure/active-directory/develop/v2-oauth2-client-creds-grant-flow), you add application permissions, which is required by apps that authenticate as themselves:
210
+
### Grant API permissions
211
+
212
+
A daemon app signs-in as itself using the [OAuth 2.0 client credentials flow](/azure/active-directory/develop/v2-oauth2-client-creds-grant-flow). You grant application permissions (app roles), which is required by apps that authenticate as themselves. You must also [register the web API](how-to-register-ciam-app.md?tabs=webapi) that your daemon app needs to call.
Copy file name to clipboardExpand all lines: articles/active-directory/external-identities/customers/how-to-web-app-node-sign-in-call-api-prepare-tenant.md
Copy file name to clipboardExpand all lines: articles/active-directory/external-identities/customers/how-to-web-app-node-sign-in-call-api-sign-in-acquire-access-token.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -119,7 +119,7 @@ The `/` route is the entry point to the application. It renders the `views/index
119
119
120
120
1. In your code editor, open *auth/AuthProvider.js* file, then add the code from [AuthProvider.js](https://github.com/Azure-Samples/ms-identity-ciam-javascript-tutorial/blob/main/2-Authorization/4-call-api-express/App/auth/AuthProvider.js) to it.
121
121
122
-
The `/signin`, `/signout` and `/redirect` routes are defined in the *routes/auth.js* file, but their logic live in *auth/AuthProvider.js* file.
122
+
The `/signin`, `/signout` and `/redirect` routes are defined in the *routes/auth.js* file, but you implement their logic in *auth/AuthProvider.js* file.
123
123
124
124
- The `login` method handles`/signin` route:
125
125
@@ -259,7 +259,7 @@ In your code editor, open *routes/users.js* file, then add the following code:
259
259
260
260
module.exports = router;
261
261
```
262
-
If the user is authenticated, the `/id` route displays ID token claims by using the `views/id.hbs`view. You added this view earlier in [Build app UI components](how-to-web-app-node-sign-in-prepare-app.md#build-app-ui-components).
262
+
If the user is authenticated, the `/id` route displays ID token claims by using the `views/id.hbs`view. You added this view earlier in [Build app UI components](tutorial-web-app-node-sign-in-prepare-app.md#build-app-ui-components).
263
263
To extract a specific ID token claim, such as *given name*:
Copy file name to clipboardExpand all lines: articles/active-directory/external-identities/customers/how-to-web-app-role-based-access-control.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,7 +28,7 @@ In this article, you learn how to receive user roles or group membership or both
28
28
29
29
- If you've not done so, complete the steps in [Using role-based access control for applications](how-to-use-app-roles-customers.md) article. This article shows you how to create roles for your application, how to assign users and groups to those roles, how to add members to a group and how to add a group claim to a to security token. Learn more about [ID tokens](../../develop/id-tokens.md) and [access tokens](../../develop/access-tokens.md).
30
30
31
-
- If you've not done so, complete the steps in [Sign in users in your own Node.js web application](how-to-web-app-node-sign-in-overview.md)
31
+
- If you've not done so, complete the steps in [Sign in users in your own Node.js web application](tutorial-web-app-node-sign-in-prepare-tenant.md)
32
32
33
33
## Receive groups and roles claims in your Node.js web app
Copy file name to clipboardExpand all lines: articles/active-directory/external-identities/customers/includes/register-app/add-api-scopes.md
+12-6Lines changed: 12 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,15 +13,21 @@ An API needs to publish a minimum of one scope, also called [Delegated Permissio
13
13
1. Under **Manage**, select **Expose an API**.
14
14
1. At the top of the page, next to **Application ID URI**, select the **Add** link to generate a URI that is unique for this app.
15
15
1. Accept the proposed Application ID URI such as `api://{clientId}`, and select **Save**. When your web application requests an access token for the web API, it adds the URI as the prefix for each scope that you define for the API.
16
+
16
17
1. Under **Scopes defined by this API**, select **Add a scope**.
17
-
18
-
1. For **Scope name**, enter *ToDoList.Read*.
19
-
1. For **Admin consent display name**, enter *Read users ToDo list using the 'TodoListApi'*.
20
-
1. For **Admin consent description**, enter *Allow the app to read the user's ToDo list using the 'TodoListApi'*.
21
-
1. Keep **State** as **Enabled** and select **Add scope**.
18
+
19
+
1. Enter the following values that define a read access to the API, then select **Add scope** to save your changes:
22
20
23
21
24
-
1. Select **Add a scope** again, and enter the following values for the second scope that defines read and write access to the API. Select **Add scope** to save your changes:
22
+
| Property | Value |
23
+
|----------|-------|
24
+
| Scope name |*ToDoList.Read*|
25
+
| Who can consent |**Admins only**|
26
+
| Admin consent display name |*Read users ToDo list using the 'TodoListApi'*|
27
+
| Admin consent description |*Allow the app to read the user's ToDo list using the 'TodoListApi'*. |
28
+
| State |**Enabled**|
29
+
30
+
1. Select **Add a scope** again, and enter the following values that define a read and write access scope to the API. Select **Add scope** to save your changes:
0 commit comments