Tegenwoordig worden steeds meer applicaties via de cloud aangesloten en geconfigureerd. Als we naar  Microsoft kijken, is het mogelijk om vele applicaties te koppelen met Azure AD. Het voordeel hiervan is dat er één identiteit is. Wel is het belangrijk dat de beveiliging op dat enkele account zo goed als mogelijk is ingesteld. In dit blog gaan we verder in op de admin consent workflow om ongewenste permissies te blokkeren voordat het te laat is. 

Beveiligen van de identiteit

Het beveiligen van de identiteit is het belangrijkste. In vorige blogs hebben we de mogelijkheden uitgebreid besproken – welke van toepassing zijn voor het beveiligen van het account. Denk hierbij bijvoorbeeld aan de opties;

Eerder in een blog waren er vijftal functionaliteiten besproken welke het mogelijk maken om eenvoudig je Active Directory accounts te beveiligen. Optie’s welke zijn besproken zijn onder andere, Multi-Factor Authentication, Privileged Identity Management, Password Protection, Conditional Access en Passwordless sign-in. Voor de quick-wins is er een artikel geschreven op deze site, met daarin enkele beveiligingstips welke vooral als een basis van toepassing zijn.

Wanneer de basis goed in orde is, heb je nog altijd de toegang richting de nieuwe applicaties. Als IT afdeling heb je bij voorkeur graag grip op de nieuwe applicaties en toegangs permissies welke worden ingesteld voor de vele cloud-apps. Zonder controle kan je tegenwoordig op vele plaatsen de apps koppelen, waarmee er regelmatig teveel permissies worden uitgegeven. Vaak ben je al te laat als de rechten zijn vergeven – al helemaal als de app permissies kwaadwillend zijn bedoeld om data te achterhalen van de organisatie. Dit is veelal aanwezig in opkomende phishing om zo de data permissies te achterhalen via OAUTH – zonder beveiliging een eenvoudige manier om teveel rechten te geven.

Toestemming van de beheerder

Een mooie oplossing is een automatisch process waarbij de gebruiker toestemming moet aanvragen voor een specifieke app welke niet in de omgeving is goedgekeurd. In het verleden was het wel mogelijk om de permissies helemaal dicht te zetten voor nieuwe apps. Gebruikers ontvingen daarbij een (fout)melding met het verzoek om contact op te nemen met de beheerder. Qua gebruikerservaring kan dit zeker beter om de gebruikers zo weinig mogelijk te belasten. Microsoft heeft hiervoor een mooie nieuwe functie in de preview fase.

Sinds eind vorig jaar is er een preview functie aanwezig in de AzureAD omgeving van Microsoft met de naam; admin consent workflow

Hiermee kan je afdwingen dat de gebruiker voor nieuwe apps een verzoek kan indienen. Vervolgens kunnen de beheerders deze verzoeken beoordelen en goedkeuren voor de gehele omgeving. De aanvraag zal hiermee via e-mail verzonden naar beheerders met de rol;

  • Global administrator
  • Cloud application adminisrator
  • Application administrator

Configuratie

Het doel van de inrichting is om de gebruiker één duidelijk scherm te laten weergeven waarin het mogelijk is om een verzoek in te dienen voor de specifieke app met ruimte voor een persoonlijke toelichting. Een voorbeeld van het scherm;

Vanuit AzureAD is het vrij eenvoudig om deze functionaliteit te configureren. Allereerst gaan we naar Azure Active Directory. Vanuit het navigatie menu klikken we vervolgens op Enterprise applications. Onder Manage, selecteer User settings.

In dit scherm zie je de rechten welke vereist zijn voor de Enterprise applications. Onder Admin Consent Request (preview) zie je vervolgens de opties welke betrekking hebben tot de app permissies.

User can request admin consent to apps they are unable to consent to: Hiermee activeer je de setting en de mogelijkheid voor het indienen van een verzoek. Om de functionaliteit te laten werken activeren de functie.

Select users to reviewe admin consent request: Dit is de groep welke de verzoeken zal beoordelen. Belangrijk is wel dat de admin gebruikers beschikken over de volgende rollen;

  • Global administrator
  • Cloud application adminisrator
  • Application administrator

Selected users will receive request expiration reminders: Met deze optie is het mogelijk om een reminder in te stellen wanneer een verzoek niet is beantwoord.

Wanneer geconfigureerd, de beheerders krijgen een mail wanneer;

  • Er een nieuw verzoek is ingediend
  • Er een verzoek is verlopen
  • Er een verzoek tegen de verloopdatum loopt

Aanvragers krijgen een notificaties wanneer; 

  • Er een verzoek is ingediend voor toegang
  • Het verzoek is verlopen
  • Er een denied of blocked is opgeven. 
  • Het verzoek is goedgekeurd

Consent request expires after (days): Verzoeken kunnen automatisch verlopen na een x datum. Dit is te wijzigen naar een waarde tussen 1 en 60 dagen.

In het scherm heb je ook de mogelijkheid om de app registraties uit te schakelen voor de normale users. In combinatie met de bovenstaande settings heb je hierdoor extra veel controle op de apps welke worden toegelaten.

Hoe werkt de flow?

Nu de settings zijn geactiveerd werkt de flow – het kan even duren voordat de werking ook echt actief is. Bij een onbekende app krijgt de gebruiker een scherm met daarin het verzoek om een akkoord in te dienen. Na het indienen komt het verzoek terecht bij de administrators, wanneer de notificaties zijn ingeschakeld ontvangen de beheerders ook een notificatie per mail.

De beheerder heeft vervolgens de mogelijkheid om de rechten te beoordelen via de mail:

Of door de verzoeken te beoordelen vanuit de Azure Portal. (Azure Active Directory – Enterprise Applications – (1)Admin Consent Requests).

Vervolgens klik je op de app voor aanvullende details. Als aanvullende details zie je de volgende waarde’s:

  1. Naam van de app
  2. Website van de app
  3. Reply-URL’s
  4. Wie de app heeft ingediend, met daarbij de notitie
  5. Opties voor een vrijgeven of alsnog blokkeren van de app
      1. Block is hierbij het definitief blokkeren
      2. Deny is het toelaten van de app, alleen zonder de extra permissies. Dit is raadzaam als een app extra permissies vereist.
      3. Door de optie review permissions and consent aan te klikken kan je de app vrijgegeven.

Vervolgens bij het goedkeuren verschijnen nogmaals de app details en de permissies welke de app vereisten voor toegang. In onderstaande voorbeeld zie je bijvoorbeeld dat de app volledige toegang wil tot de gebruikersbestanden. Bij een goedkeuring krijgen alle aanvragers automatisch een mail met de update.

Bij een block heb je de optie om een reden op te geven, om zo de gebruiker op de hoogte te brengen van de blokkade. Wanneer je de app zal blokkeren worden de rechten voor alle gebruikers in de omgeving beperkt. Door deze actie zal de login uitgeschakeld worden bij de specifieke app in de AzureAD.

Door deze configuratie toe te passen krijg je grip op je permissies welke worden uitgegeven aan apps op een gebruiksvriendelijke manier. Ook kan je hiermee vrij eenvoudig OAuth phishing beperken welke via app permissies werken. Wel is het belangrijk om goed te controleren of alle vertrouwde apps welke zijn goedgekeurd ook echt zijn goedgekeurd voor de organisatie – dit voorkomt problemen bij bestaande apps en ongewenste blokkades.

Benieuwd naar meer tips rondom de security, bekijk de categorie; Security

Bronnen:

Microsoft; https://docs.microsoft.com/nl-nl/azure/active-directory/manage-apps/configure-admin-consent-workflow