Create the Microsoft Entra App Registration
App Store for Intune uses one app registration in your tenant. It plays two roles, both bound to the same client ID:
- Sign-in: the portal’s sign-in page redirects users here, then receives an access token scoped to
access_as_user. - Token validation: the backend API trusts only tokens whose audience matches this client ID, then checks the scope.
A single app registration can do both: expose the access_as_user scope (the audience) and configure a Single-page application platform with redirect URIs (the sign-in surface).
Register the application
Section titled “Register the application”-
Go to Azure Portal > Microsoft Entra ID > App registrations.
-
Select New registration.
-
Name:
App Store for Intune. -
Supported account types: Single tenant only.
-
Redirect URI: leave empty for now. After the deploy completes you’ll add the App Service URL, see Add the production redirect URI.
-
Select Register.
-
Record the Application (client) ID: you’ll supply this to the Deploy to Azure wizard. This is the only value you need from this registration, the tenant ID is detected automatically during deployment, and this registration never gets a client secret.
Expose the access_as_user scope
Section titled “Expose the access_as_user scope”This is what the backend uses to validate incoming tokens, and what the portal asks the user to consent to during sign-in.
- Select Expose an API > Add a scope.
- Application ID URI: accept the default (
api://<client-id>). - Select Save and continue.
- Scope name:
access_as_user - Who can consent: Admins and users
- Admin consent display name:
Access App Store for Intune - Admin consent description:
Allows the app to access the App Store for Intune backend as the signed-in user. - User consent display name:
Access App Store for Intune - User consent description:
Allows the app to access the App Store for Intune backend on your behalf. - State: Enabled
- Select Add scope.
Grant consent for the profile photo
Section titled “Grant consent for the profile photo”The portal shows the signed-in user’s profile photo in the header, which it reads from Microsoft Graph using the delegated User.Read permission. User.Read lists Admin consent required: No, so it is easy to assume no action is needed, but the portal requests this permission silently (it is not part of the sign-in consent prompt), so it has to be consented in advance. Without consent the photo call fails and users see their initials instead.
- On the app registration, select API permissions.
- Confirm Microsoft Graph > User.Read (Delegated) is listed. If it is not, select Add a permission > Microsoft Graph > Delegated permissions, search for
User.Read, select it, then Add permissions. - Select Grant admin consent for [your tenant], then Yes.
User.Readthen shows a green check in the Status column.
Next step
Section titled “Next step”Continue to Deploy to Azure.