|
| 1 | +--- |
| 2 | +title: "Allowing Dodona in Microsoft Entra ID" |
| 3 | +description: "For IT administrators: reviewing and allowing Dodona's Microsoft application in your own Microsoft Entra tenant." |
| 4 | +order: 2 |
| 5 | +--- |
| 6 | + |
| 7 | +# Allowing Dodona in Microsoft Entra ID |
| 8 | + |
| 9 | +This page is written for the IT administrators of a school, college or university. It contains everything you need to review Dodona's Microsoft application and to allow it in your own Microsoft Entra tenant, so that your users can sign in to Dodona with their institutional Microsoft account. |
| 10 | + |
| 11 | +Students and teachers don't need anything on this page. They simply sign in at [dodona.be](https://dodona.be) and pick their institution. |
| 12 | + |
| 13 | +## About Dodona |
| 14 | + |
| 15 | +<!--@include: ../../_what-is-dodona.md--> |
| 16 | + |
| 17 | +Dodona is developed and operated by Dodona Learning Technologies BV. Using Dodona is free of charge for educational institutions. |
| 18 | + |
| 19 | +## Why you might be reading this |
| 20 | + |
| 21 | +Dodona uses Microsoft Entra ID (formerly Azure AD) to sign in users with their institutional Microsoft 365 account. Some institutions restrict which third-party applications their users may consent to. In that case Microsoft blocks the sign-in, and someone from your IT department has to allow the Dodona application explicitly before your users can get in. |
| 22 | + |
| 23 | +::: warning We now use our own application registration |
| 24 | + |
| 25 | +Until recently, signing in to Dodona with a Microsoft account went through an application registration managed by Ghent University. Dodona now has its own application registration, the one described below. |
| 26 | + |
| 27 | +If your institution explicitly allowed the previous application, that approval doesn't carry over. You need to allow this application as well. |
| 28 | +::: |
| 29 | + |
| 30 | +## The application registration |
| 31 | + |
| 32 | +| | | |
| 33 | +| --- | --- | |
| 34 | +| Display name | `Dodona` | |
| 35 | +| Application (client) ID | `060c642b-473b-4423-a9f6-dfc67066deb6` | |
| 36 | +| Publisher | Dodona Learning Technologies BV | |
| 37 | +| Publisher domain | `dodona.be` | |
| 38 | +| Supported account types | Accounts in any organizational directory (multitenant) and personal Microsoft accounts | |
| 39 | +| Redirect URI | `https://dodona.be/users/auth/microsoft/callback` | |
| 40 | + |
| 41 | +The application is [publisher verified](https://learn.microsoft.com/en-us/entra/identity-platform/publisher-verification-overview) by Microsoft, which means Microsoft has verified that Dodona Learning Technologies BV is the organisation publishing it. You can recognise this by the blue `Verified` badge on the consent prompt and on the application's page in the Microsoft Entra admin center. |
| 42 | + |
| 43 | +## Which permissions Dodona requests |
| 44 | + |
| 45 | +Dodona requests three **delegated** Microsoft Graph permissions, and nothing else: |
| 46 | + |
| 47 | +- `openid`: sign the user in and receive an ID token. This is the permission that makes single sign-on work at all. |
| 48 | +- `email`: read the primary email address of the signed-in user. |
| 49 | +- `profile`: read the basic profile of the signed-in user, such as their name. |
| 50 | + |
| 51 | +These are the three [OpenID Connect scopes](https://learn.microsoft.com/en-us/entra/identity-platform/scopes-oidc) that Microsoft describes as the minimum for basic sign-in. All three are in the tier that does **not** require administrator consent. |
| 52 | + |
| 53 | +::: tip Dodona makes no Microsoft Graph API calls |
| 54 | + |
| 55 | +Dodona never calls the Microsoft Graph API. The permissions above exist only so that Microsoft issues an ID token when someone signs in. Dodona reads a few [claims](https://learn.microsoft.com/en-us/entra/identity-platform/id-token-claims-reference) from that token and then discards the token itself: |
| 56 | + |
| 57 | +- `oid` and `tid`: the immutable identifiers of the user and of your tenant. Dodona uses these to recognise a returning user and to link the account to your institution. |
| 58 | +- `email`, `given_name`, `family_name`, `preferred_username` and `name`: the user's email address and name, used to fill in their Dodona profile. |
| 59 | + |
| 60 | +That is the complete list. There is no background service, no refresh token, and nothing with which Dodona could query your directory. |
| 61 | +::: |
| 62 | + |
| 63 | +Concretely, this means that: |
| 64 | + |
| 65 | +- Dodona never receives, stores or asks for the user's Microsoft password. Authentication happens entirely on Microsoft's own sign-in pages. |
| 66 | +- Dodona requests no access to mail, files, calendars, Teams or directory data. |
| 67 | +- Dodona has no access to anything in your tenant beyond the sign-in itself. |
| 68 | + |
| 69 | +What Dodona does with the personal data it receives is described in our [data policy](https://dodona.be/en/data/). |
| 70 | + |
| 71 | +## Allowing the application |
| 72 | + |
| 73 | +Which of the following applies depends on your tenant's consent configuration. Granting tenant-wide admin consent is the most predictable option, and the one we usually ask for. |
| 74 | + |
| 75 | +### Reviewing the application in your tenant |
| 76 | + |
| 77 | +Once at least one of your users has attempted to sign in, the Dodona application appears in your tenant under `Enterprise applications` in the [Microsoft Entra admin center](https://entra.microsoft.com). Search for `Dodona`, or filter on the application ID above if you have several results. Microsoft documents this in [View enterprise applications](https://learn.microsoft.com/en-us/entra/identity/enterprise-apps/view-applications-portal). |
| 78 | + |
| 79 | +From the application's `Permissions` page you can see exactly which permissions have been requested and granted. |
| 80 | + |
| 81 | +### Granting tenant-wide admin consent |
| 82 | + |
| 83 | +Granting admin consent on behalf of your organisation means your users are never prompted for consent themselves. You do this from the application's `Permissions` page under `Enterprise applications`, as described in [Grant tenant-wide admin consent to an application](https://learn.microsoft.com/en-us/entra/identity/enterprise-apps/grant-admin-consent). |
| 84 | + |
| 85 | +If the application isn't in your tenant yet, you can also start the consent flow directly. Open the following URL while signed in with an account that may consent on behalf of your organisation, and replace `{tenant}` with your tenant ID or one of your verified domain names: |
| 86 | + |
| 87 | +``` |
| 88 | +https://login.microsoftonline.com/{tenant}/adminconsent?client_id=060c642b-473b-4423-a9f6-dfc67066deb6 |
| 89 | +``` |
| 90 | + |
| 91 | +Granting consent requires a role such as `Cloud Application Administrator` or `Privileged Role Administrator`. |
| 92 | + |
| 93 | +### Your user consent settings |
| 94 | + |
| 95 | +If you'd rather not consent on behalf of everyone, your users can consent for themselves, depending on the user consent setting of your tenant. You can find it under `Enterprise applications` > `Consent and permissions` > `User consent settings`, documented in [Configure how users consent to applications](https://learn.microsoft.com/en-us/entra/identity/enterprise-apps/configure-user-consent). |
| 96 | + |
| 97 | +- `Allow user consent for apps`: your users can consent to Dodona themselves and you don't need to do anything. |
| 98 | +- `Allow user consent for apps from verified publishers, for selected permissions`: Dodona is publisher verified, so it meets the publisher half of this policy. The requested permissions also have to be classified as low impact in your tenant. If they aren't, add `openid`, `email` and `profile` to your [permission classifications](https://learn.microsoft.com/en-us/entra/identity/enterprise-apps/configure-permission-classifications), or grant admin consent instead. |
| 99 | +- `Do not allow user consent`: an administrator has to consent. Either grant tenant-wide admin consent as described above, or enable the [admin consent workflow](https://learn.microsoft.com/en-us/entra/identity/enterprise-apps/configure-admin-consent-workflow) so that users can request approval from within the sign-in flow. |
| 100 | + |
| 101 | +### Restricting who can sign in |
| 102 | + |
| 103 | +Allowing the application doesn't oblige you to open it up to everyone. You can set `Assignment required` on the application and then assign only the users or groups that should be able to sign in to Dodona, as described in [Assign users and groups to an application](https://learn.microsoft.com/en-us/entra/identity/enterprise-apps/assign-user-or-group-access-portal). Note that applications requiring assignment always need administrator consent, even when your user consent settings would otherwise allow users to consent themselves. |
| 104 | + |
| 105 | +## Still stuck? |
| 106 | + |
| 107 | +If sign-in keeps failing after you allowed the application, or if you need something we haven't listed here (a DPA, an extra security questionnaire, a different redirect URI for a test setup), use the contact form at [dodona.be/en/contact](https://dodona.be/en/contact). We're happy to help, and all comments and suggestions are more than welcome. |
| 108 | + |
| 109 | +For questions about accounts on Dodona in general, see the [FAQ about accounts and settings](/en/faq/accounts/). |
0 commit comments