Wat speelt er nu bij ShareValue?

Lesley Lesley / 08-11-2022

5 minuten lezen

Microsoft Teams (in dit artikel verder genoemd: Teams) is een samenwerkings-app die is gemaakt voor hybride werk (Teams voor online en hybride werk, 2022). Teams telt overigens dit jaar 270 miljoen gebruikers in 181 landen (Curry, 2022).

Bij veel organisaties wordt hard gewerkt om Teams zo in te richten, dat gebruikers deze app goed en veilig kunnen gebruiken. Bij het werken binnen Teams wordt data gebruikt en verwerkt. Deze data (afkomstig uit chat-, kanaal- en bestandengegevens) wordt standaard voor onbepaalde tijd bewaard. In een aantal situaties kan het echter voorkomen dat deze data uit een specifieke Teams-site of van specifieke groep gebruikers niet standaard voor onbepaalde tijd moet worden bewaard. Maar bijvoorbeeld juist moet worden bewaard, gearchiveerd (of vernietigd) na een bepaalde periode. Dit is binnen Teams niet standaard ingericht.

Bewaarbeleid en compliance

Het archiveren van overheidsinformatie is niet vrijblijvend. De Archiefwet verplicht elke overheidsorganisatie om haar informatie duurzaam toegankelijk te maken en te houden, en te vernietigen wanneer de bewaartermijn is verlopen (Archiefwet | Nationaal Archief, 2022). In deze overheidsinformatie staan vaak persoonsgegevens. Daarom moeten overheidsorganisaties zich niet alleen aan de Archiefwet houden, maar ook aan de (Algemene Verordening Gegevensbescherming (AVG) | Autoriteit Persoonsgegevens, 2022). De Politie moet zich daarnaast ook aan de (Wetten.Nl - Regeling - Wet Politiegegevens - BWBR0022463, 2022) houden.

Het is noodzakelijk dat er afspraken worden gemaakt en bewaarbeleid wordt gevormd over het beheren, archiveren, registreren en beschikbaar stellen van deze data.

Bewaarbeleid is volgens de (European Knowledge Center for Information Technology (Ed.), 2018) essentieel om te voldoen aan bijvoorbeeld de regels van Archiefbeheer. En om daarmee Compliant te zijn (Microsoft Compliance, 2022).

De afspraken die in het bewaarbeleid zijn vastgelegd, zijn in Teams maar voor een deel standaard ingericht. Wanneer bijvoorbeeld is bepaald dat Teams’ chat-geschiedenis permanent en automatisch moet worden verwijderd na een bepaalde periode, dan moet daarvoor een zogenaamde Teams beleidsregel (Microsoft Retention, 2022) worden gemaakt, afgestemd op het bewaarbeleid van de organisatie.

Microsoft Purview

Teams ondersteunt bewaarbeleid voor chat- en kanaalberichten, zodat je als IT-administrator proactief beslist of je deze gegevens wilt bewaren, verwijderen of gedurende een bepaalde periode wilt bewaren en vervolgens wilt verwijderen. Het begin van de bewaartermijn voor deze acties is altijd gebaseerd op wanneer een bericht wordt gemaakt. Je kunt een Teams-bewaarbeleid toepassen op de hele organisatie of op specifieke gebruikers en teams. Dergelijke beleidsregels worden gemaakt in wat tegenwoordig de MS Purview wordt genoemd. Purview voegt de voormalige oplossingen en services van Azure Purview en Microsoft 365-compliance samen tot 1 enkel merk en gebruikersinterface (Wat Is Microsoft Purview? | Microsoft Learn, 2022).

Praktijkvoorbeeld

Standaard worden dus chat-, kanaal- en bestandengegevens van Teams voor onbepaalde tijd bewaard. Er zijn situaties waarin de data moet worden verwijderd na een bepaalde periode. Het liefst automatisch (dus door een beleidsregel). Denk bijvoorbeeld aan de volgende voorbeelden:

  • Journalist: Persmateriaal;
  • HR: Teams-data van een Directie moet worden gearchiveerd. En na x jaar worden verwijderd;
  • Docent: bij de voorbereiding van een nieuw te starten studiejaar, data (van studenten van het afgelopen studiejaar) bewaren…..en na vijf jaar automatisch laten verwijderen.

In dit artikel laat ik zien op welke manier het mogelijk is om een Teams-beleidsregel in te stellen aan de hand van het volgende voorbeeld: “Verwijder van alle gebruikers de complete MS Team groep chat-historie na 1 dag (24 uur)”

  • Let op: Test bovengenoemd voorbeeld uit op een test-omgeving!
  • In dit voorbeeld wordt gebruik gemaakt van de Engelstalige interface van MS Purview.

Instellen Microsoft Teams Bewaarbeleid in 10 stappen

Er bestaat geen standaard optie om de chathistorie automatisch en permanent te verwijderen. Maar dit is wel mogelijk door onderstaande stappen uit te voeren:

Via portal.office.com log je in (met admin rechten) op de MS365 admin center. En vervolgens via [Compliance] naar MS Purview. Selecteer aan de linkerkant [Policies] en vervolgens [Retention policies].

Zoals je ziet bestaat er geen standaard Retention-policy voor de teams-chat. Dus we maken een nieuwe policy als volgt aan:

Stap 1

​Stap 1

Klik op [+New retention policy]

Stap 2

Stap 2

Vul een naam en eventueel omschrijving in en klik vervolgens [next]

Stap 3

Stap 3

Nu moet er een keuze gemaakt worden voor het type retentie-policy.

Selecteer [Static] en vervolgens [next]. De keuze voor static heeft te maken met het feit dat er geen uitgebreide zoekcriteria nodig zijn.

Stap 4

Stap 4

Zoals je ziet zijn de opties voor Teams (standaard) uitgeschakeld.

Stap 5

Stap 5

Aangezien ik een policy wil maken voor de Teams chat van alle gebruikers stel ik deze wel in. Selecteer [on] bij Teams Chats en kies daarna [next].

Stap 6

Stap 6

De standaard retentie is ingesteld op 7 jaar.

Stap 7

Stap 7

Selecteer [custom], aangezien we niet na de standaard 7 jaar items willen verwijderen.

Stap 8

Stap 8

Vul de juiste gegevens in en kies [next]...

Stap 9

Stap 9

... en kies [submit].

Let op: items ouder dan 1 dag zullen permanent worden verwijderd!

Stap 10

Stap 10

De retentie policy is met succes gemaakt!


Samenvatting en conclusie

Bewaarbeleid binnen Teams helpt om de informatie in de organisatie effectiever te beheren. Je kan bewaarinstellingen configureren om gegevens te bewaren die nodig zijn om te voldoen aan het interne beleid, de branchevoorschriften of de wettelijke vereisten voor je organisatie. Je kunt ook bewaarinstellingen configureren om gegevens te verwijderen die als een verplichting worden beschouwd, die je niet langer hoeft te bewaren of die geen wettelijke of zakelijke waarde (meer) hebben.

Het is relatief eenvoudig om een Teams-beleidsregel te maken. In dit voorbeeld zelfs maar in 10 stappen😊. Het is niet alleen van belang om te weten waar je de juiste functionaliteit (knop) kunt vinden binnen Purview. Het is ook belangrijk om te begrijpen waar een knop voor dient (wat is de impact? Voor wie? Waarom?). Daarom adviseer ik dit te communiceren met alle betrokkenen in je organisatie. Vooral de gebruikers.

“​The technology you use impresses no one.

The experience you create with it is everything.”

(Sean Gerety)

Mocht je nog vragen hebben en/of meer willen weten: laat het mij weten! Ik denk graag met je mee.

Literatuurlijst

Algemene verordening gegevensbescherming (AVG) | Autoriteit Persoonsgegevens. (2022).

Archiefwet | Nationaal Archief. (2022).

Curry, D. (2022, september 6). Microsoft Teams Revenue and Usage Statistics (2022) - Business of Apps.

European Knowledge Center for Information Technology (Ed.). (2018, oktober 19). Retentiebeheer is essentieel om te voldoen aan regels archiefbeheer.

Microsoft Compliance. (2022). Beveiliging, compliance en privacy | Microsoft Teams.

Teams voor online en hybride werk. (2022). Microsoft Teams voor online en hybride werk | Microsoft Teams.

Wat is Microsoft Purview? | Microsoft Learn. (2022).

Wetten.nl - Regeling - Wet politiegegevens - BWBR0022463. (2022).

Sem Sem / 13-09-2022

6 minuten lezen

De laatste jaren vindt er een transitie plaats op het gebied van mobile development. Steeds vaker kiezen bedrijven ervoor om hun mobiele applicaties niet langer in Java (voor Android) of Swift (voor iOS) te ontwikkelen, maar kiezen zij voor een hybride framework als basis voor hun mobiele applicatie. In deze blog beschrijf ik één van deze frameworks, namelijk Ionic. Wat is Ionic, hoe werkt het en waarom zou jij de transitie moeten maken naar een native web-framework voor het ontwikkelen van mobiele applicaties.

Wat is Ionic?

Ionic is een open source interface platform waarmee mobiele en desktop-applicaties ontwikkeld kunnen worden met gebruik van web-technologieën als HTML, CSS en JavaScript. Deze toolkit wordt nauw geïntegreerd met een populair Front-end JavaScript framework naar keuze, zoals Angular, Vue en React. In andere woorden maakt Ionic het mogelijk om jouw webapplicatie voor verschillende platforms te ontwikkelen vanuit één codebase en daarbij gebruik te maken van de native functionaliteiten van de apparaten waarop de applicatie draait. Omdat Ionic apps gebaseerd zijn op het web, kun je ook verschillende web-gebaseerde UI libraries gebruiken zoals TailwindCSS of Bootstrap voor de opmaak van je applicatie.

Ionic maakt gebruik van Capacitor. Capacitor is een cross-platform native runtime die verschillende web-gerichte API’s biedt. Daarmee kan de app zoveel mogelijk web standaarden blijven gebruiken en heeft daarbij toegang tot de uitgebreide systeemeigen apparaat-functies. Denk hierbij bijvoorbeeld aan het gebruik van bluetooth, locatie, push notificaties, batterijstatus, opslag en de camera.

Waarom wil je Ionic gebruiken?

Ionic biedt de gebruiker een naadloze ervaring, waar de gebruiker zich ook bevindt. Of dat nu op een telefoon is, op een desktop of in de browser; de gebruiker verwacht consistentie via alle kanalen. Door het gebruik van Ionic kan met een enkele codebase voor al deze kanalen een applicatie uitgerold worden.

Door met Ionic te bouwen, kun je je bestaande web-ontwikkelaars inzetten voor het bouwen van mobiele- en desktop applicaties. Je hoeft niet langer op zoek naar een aparte ontwikkelaar voor ieder platform dat je wilt ondersteunen. De web-ontwikkelaars ontwikkelen de applicatie in Ionic en rollen deze zonder problemen uit naar de verschillende platformen.

Naast bovengenoemde voordelen is Ionic ook nog eens open-source en dus helemaal gratis. Ionic heeft een grote community en vraagstukken waar je als ontwikkelaar tegenaan loopt worden dan ook veel besproken op de verschillende ontwikkelforums. Daarnaast integreert Ionic heel gemakkelijk met bekende tools (bijvoorbeeld met Azure), zodat het uitrollen van applicaties naar de Google Play Store of Apple App Store heel eenvoudig wordt.

Hoe werkt Ionic?

Een native functionaliteit is door het gebruik van Capacitor eenvoudig in een Ionic-app toe te voegen. Zo kunnen we bijvoorbeeld de locatie van ons toestel gebruiken. Als eerst moeten we een nieuwe Ionic applicatie genereren. Dit kunnen we zelf doen via de command-line Interface die Ionic biedt, of via een handige web-interface.

Figuur 1 - Web-interface voor het opzetten van een Ionic-applicatie.

In dit voorbeeld maken wij de applicatie met de CLI. Eerst zorgen we ervoor dat Ionic globaal op onze computer geïnstalleerd is en daarna starten we het initialisatie proces.


$ npm install -g @ionic/cli

$ ionic start

De Ionic-CLI vraagt ons nu een aantal dingen te kiezen voor ons project, zoals welk framework en welke basis-lay-out wij willen in onze app? In mijn voorbeeld kies ik voor Angular met een `blank` applicatie-lay-out, maar andere opties zijn een lay-out met tabbladen of met een menu. De eerste opzet van deze applicatie heeft nog weinig functionaliteit, hier gaan we verandering in brengen.

Figuur 2 - Standaard Ionic-applicatie zonder menu of tabbladen.

Om de locatie-functionaliteit toe te voegen, moeten we de gewenste Capacitor-plug-in installeren in ons project zodat wij deze kunnen gebruiken. In de documentatie van Ionic voor native functionaliteiten (https://ionicframework.com/docs/native) is een uitgebreide lijst te vinden met alle native API’s die geïnstalleerd kunnen worden en hoe deze te gebruiken. Als eerst voeren we de volgende commando’s uit om de locatie plug-in te installeren.


$ npm install cordova-plugin-geolocation

$ npm install @awesome-cordova-plugins/geolocation

$ ionic cap sync

Vervolgens openen wij het Home-component van onze nieuwe Ionic-applicatie die nu nog de standaard template code bevat waarin wij de locatie gaan gebruiken. Door middel van de volgende code kunnen we eenvoudig de locatie van onze gebruiker opvragen. In de initialisatie van dit component vragen we de huidige positie op via de Geolocation-API en tonen deze in het template.

 

import { Component, OnInit } from '@angular/core';
import { Geolocation, Geoposition } from '@awesome-cordova-plugins/geolocation/ngx';

@Component({
  selector: 'app-home',
  template: `
    <ion-content [fullscreen]="true">
      <div id="container">
        <strong>Uw huidige locatie:</strong>
        <p *ngIf="currentPosition">{{currentPosition.coords.latitude}}, {{currentPosition.coords.longitude}}</p>
        <p *ngIf="!currentPosition">Onbekend</p>
      </div>
    </ion-content>
  `
})
export class HomePage implements OnInit {
  currentPosition: Geoposition;

  constructor(private geolocation: Geolocation) {}

  ngOnInit(): void {
    this.geolocation.getCurrentPosition().then((resp) => {
      this.currentPosition = resp;
    }).catch((error) => {
      console.log('Error getting location', error);
    });
  }

}


Zoals hierboven te zien is, maakt Ionic het ons erg gemakkelijk. Als ontwikkelaar hoef je je helemaal niet bezig te houden met de functionele werking van de locatiebepaling of welke andere native functionaliteit dan ook. We roepen simpelweg de functies aan die de plug-in ons biedt (zoals ‘getCurrentPosition’ in bovenstaand voorbeeld) en Ionic regelt alles achter de schermen voor ons. Er wordt door het besturingssysteem ook automatisch om toestemming gevraagd voor het gebruiken van de locatie.

Figuur 3 - Locatie-toestemming wordt door de telefoon zelf afgehandeld.

Als de locatie succesvol kan worden opgehaald, zien we dat de coördinaten van de locatie in de app worden weergegeven.

Figuur 4 - Locatie-coördinaten worden succesvol opgehaald en weergegeven.

Een volgende stap kan bijvoorbeeld zijn om deze locatie op een kaart weer te geven of op te slaan in een SQL-database op het apparaat. Ionic biedt hier heel veel mogelijkheden in. Het mag duidelijk zijn dat ik als web-ontwikkelaar geen weet heb van de platform-specifieke vereisten voor het toepassen van deze functionaliteiten. Dit is iets wat Capacitor en Ionic ons volledig uit handen nemen.

Conclusie

Ionic biedt een alles-in-één pakket om mobiele-, desktop- en webapplicaties te ontwikkelen die gebruik kunnen maken van systeemeigen functionaliteiten van je toestel. De voordelen die je hieruit kan halen zijn enorm, maar kort samengevat zijn dat:

  • Een naadloze, consistente ervaring voor de eindgebruiker via verschillende kanalen.
  • Eén ontwikkelteam voor zowel mobiele-, desktop- als webapplicaties.
  • Open-source en dus helemaal gratis.
  • Geen kennis nodig van complexe, apparaat-eigen functionaliteiten.

Veel grote tech-bedrijven maken al gebruik van Ionic. Voorbeelden van apps die gemaakt zijn met Ionic zijn Sworkit, MarketWatch en Sanvello. Voor meer voorbeelden verwijs ik je naar de website van Ionic zelf!

Benieuwd naar hoe Ionic binnen jouw organisatie ingezet kan worden? Neem gerust contact op, dan bespreken we samen de mogelijkheden. Ben je zelf een ontwikkelaar met interesse in ontwikkelen van Ionic-applicaties? Kom dan eens langs voor een kop koffie!

Joost Joost / 07-07-2022

6 minuten lezen

Veel bedrijven maken gebruik van het Power Platform om verschillende redenen. Als je tijdens jouw werkzaamheden te maken krijgt met bedrijfsprocessen waarbij je veel terugkerende handmatige acties moet uitvoeren, kan Power Automate je hier goed bij helpen deze te automatiseren. Maar ook het maken van SharePoint-formulieren of Mobile applicaties is geen probleem: met Power Apps zet je die zonder al te veel programmeerwerk in elkaar. Het delen, maar ook het maken, van deze oplossing in een Microsoft Teams-omgeving maakt het plaatje compleet.

Met deze ontwikkelingen kan jij met je collega’s in een vrij korte tijd en op een simpele manier bedrijfsprocessen vertalen in oplossingen zonder tussenkomst van de IT-afdeling of een ontwikkelaar. Dit wordt ook wel citizen developments genoemd.

Maar hoe kan je als bedrijf jouw collega’s een veilige, maar ook betrouwbare omgeving bieden als je geen inzichten en grip hebt op wat er gebeurt binnen je bedrijfsomgeving? Hier komt het Power Platform Center of Excellence om de hoek kijken.

Wat is het Power Platform Center of Excellence (CoE) en waarom wil je dit gebruiken?

Het Center of excellence bestaat volledig uit Power Platform onderdelen. De gegevens over jouw omgeving worden opgehaald door Power Automate flows, waarna ze worden opgeslagen in Dataverse Tabellen. Vanuit hier kan je verschillende inzichten opvragen d.m.v. Power BI rapportages. Al deze onderdelen (het CoE) worden geïnstalleerd op een Power Platform (Teams) omgeving waarvanuit alle acties worden ondersteund. Omdat het onderdelen van het Power Platform betreft, kan je de configuratie naar je eigen hand zetten. De basis staat, het is dan ook vrij simpel om het zo in te richten dat het past binnen jullie bedrijfscultuur.

Maar waarom wil je het Center of Excellence gebruiken? Er zijn genoeg andere mogelijkheden om inzichten te krijgen over je Power Platform-omgeving. Het CoE geeft niet alleen inzicht over jouw omgeving, maar kan je ook helpen deze zo efficiënt mogelijk in te zetten, beheersbaar en veilig te houden. Daarnaast geeft het CoE ook richtlijnen hoe je een Adoptietraject kunt starten, hoe je App- en Flow-makers bij elkaar kunt zetten in een community die zo kunnen leren van elkaars ontwikkelde objecten. Je krijgt een volledig pakket waarmee je inzichten kunt genereren, acties uit kunt voeren, overzichten/ audit trails kunt bekijken en innovatie kunt stimuleren d.m.v. een doordacht adoptieplan.

Ben je op zoek naar de juiste licenties en komt je er niet uit? ShareValue kan je helpen met het uitzoeken en aanschaffen van de benodigde licenties.

Installatie en licenties

Om het Center of Excellence te kunnen gebruiken zal je deze eerst moeten installeren. Je installeert het CoE op een Power Platform-omgeving of een Teams-omgeving. Deze omgeving zal volledig gereserveerd worden voor het gebruik van het CoE.

Naast een omgeving zijn er nog een aantal eigenschappen waar je rekening mee moet houden.

Je kan de volledige installatie en configuratie doen op één account. Dit account heeft de volgende eigenschappen nodig om het CoE te kunnen gebruiken:

  • Het account moet lid zijn van één van deze groepen: Microsoft Power Platform-servicebeheerder, algemene tenantbeheerder of Dynamics 365-servicebeheerder.
  • Het moet een Microsoft 365-licentie hebben met e-mailfunctionaliteit.
  • Het account moet een Power Apps-licentie per gebruiker (geen proefversie) hebben.
  • Het account moet een Power Automate per gebruiker- of per Flow-licentie (niet-proefversie) hebben.

Deze rechten moeten altijd beschikbaar zijn voor dit account: een activatie van Privileged Identity Management (PIM) is niet genoeg om het CoE van de juiste informatie te voorzien.

Hoe ziet het Center of Excellence eruit?

Eerder vertelde ik je dat het Center of Excellence uit meerdere onderdelen bestaat. Één van deze onderdelen is het Power BI Dashboard. Hierin kan je alle gegevens terugvinden die door het Center of Excellence wordt verzameld en gebruiken voor vervolgacties.

Het dashboard

Als we kijken naar het dashboard zie je 3 onderwerpen met daaronder verschillende tegels. Achter elke tegel zit een rapportage die je kan inzien, exporteren en gebruiken om je eigen analyse te maken.

Als we naar het onderwerp Monitor gaan en hier kiezen voor Overview Power Apps, dan komen we in een ander scherm terecht waarin je een overzicht ziet van: (boven naar beneden)

  • Een balk met algemene informatie van de omgevingen.
  • Links, de totaal ontwikkelde Power Apps per omgeving.
  • In het midden, de makers van deze apps.
  • En rechts, een locatie overzicht van de makers.

Overview Power Apps

Eenzelfde soort overzicht, maar dan van de Power automate Flows, krijg je te zien als je naar de tegel Overview Power Automate gaat.

Voor de Power Platform- en Teams-omgevingen is er ook een overzicht. Deze laat duidelijk zien hoeveel omgevingen van welke soort er bestaan. Een handige toevoeging in dit overzicht is een tabel met welke apps/flows er wanneer ontwikkeld zijn op deze omgevingen.

​Microsoft Teams Environments

Natuurlijk is een zekere controle nodig om je bedrijfsdata te beschermen. Als je de mogelijkheid voor het delen van data in een app of flow wilt beperken. Is er een mogelijkheid om de connectoren die gebruikt worden om deze data te verbinden, uit te sluiten voor gebruik. Dat kan je inrichten met een zo genoemde Data lost Policy (DLP). Om inzicht te krijgen welke connectoren er gebruikt worden in de omgevingen van jouw power platform, kan je de Tegel Custom connectors open.

​Connectoren

In dit overzicht zie je meteen welke connectoren er gebruikt worden binnen een app of flow. Op deze manier kan je een inschatting maken of er connectoren gebruikt worden en of deze wel of niet toegestaan zijn.

Het opzetten van een governance-strategie

Nu we het overzicht hebben van de ontwikkelingen op jouw Power Platform-omgeving, zijn we in staat om hier acties aan te koppelen.

Er zijn verschillende acties die je kunt uitvoeren met betrekking tot je governance strategie. Hierbij moet je denken aan het opschonen van niet gebruikte omgevingen, Power Apps en Power Automate flows. Deze worden herkend door het CoE die vervolgens de eigenaar helpt herinneren dat er een object is dat niet meer gebruikt wordt en zal hem vragen of deze verwijderd kan worden. Nadat de eigenaar zijn goedkeuring geeft om deze te verwijderen zal het CoE dit ook daadwerkelijk doen.

Hierdoor blijven de omgevingen efficiënt werken en krijgen anderen ook de ruimte om Applicaties en flow te ontwikkelen.

​Governance-strategie

Conclusie:

Of je nu als bedrijf gaat beginnen met het Power Platform of al vergevorderd bent. Het Center of Excellence geeft je de hulpmiddelen om in controle te komen van jouw Power Platform. Met de inzichten van je omgevingen, de acties die je hieraan kunt koppelen, en de adoptie van het gehele Platform, ben je beter in staat om het Power Platform functioneel en efficiënt in te zetten. Met het uitdenken en toepassen van de security en governance strategie, richt je kaders in waar makers binnen kunnen ontwikkelen. Hiermee ben jij terug in controle.

Heb je vragen over het Power Platform, of wil je meer weten van het Center of Excellence neem dan contact met ons op. Wij helpen je graag met het uitzoeken van de beste oplossingen op het gebied van het Power Platform maar ook met de benodigde licenties hiervoor.

Gerard Gerard / 05-07-2022

7 minuten lezen

De afgelopen jaren is de wereld van Microsoft Teams erg veranderd. Van een simpele chat-tool naar de plek waar we dagelijks in samenwerken. In deze blog wil ik ingaan op de vraag waar we naartoe gaan, en geef ik een aantal tips om Teams steeds effectiever te gaan gebruiken.

Vóór de corona-pandemie

Het was altijd wel duidelijk hoe we allemaal met elkaar samenwerkten: we werkten allemaal op kantoor en vergaderden gezamenlijk in één ruimte. Dat werkte eigenlijk allemaal wel prima. Microsoft Teams werd wel al gebruikt, maar voornamelijk als chat-tool om te chatten met externen. Nog niet echt om in samen te werken.

Tijdens de corona-pandemie

Ik heb nog nooit een product zo snel geadopteerd zien worden als Teams de afgelopen twee jaar. Ineens werkten we allemaal thuis, vergaderden we ook vanuit huis. Daar werd Teams dan ook voornamelijk voor gebruikt: voor het vergaderen.

Waar gaan we naartoe?

Langzamerhand gaan we weer naar kantoor, maar vaak niet voor 100%. We werken vanuit huis, onderweg, vanuit kantoor, op satelliet-kantoren… opties zat. Een belangrijke uitdaging hierbij is natuurlijk: hoe zorg je ervoor dat alles veilig blijft? Hier heeft mijn collega Koos laatst een interessante blog over geschreven.

Wanneer we nu samenwerken, vergaderen en informatie delen is dat vaak hybride, in Teams. Teams verandert daarmee van een vergadertool naar onze primaire samenwerkomgeving. Gebruikers starten hun dag in Teams en verblijven er vaak de hele dag in. Toch moet er nog vaak worden overgeschakeld naar allerlei andere omgevingen, bijvoorbeeld om te werken in een whiteboard of om aanmeldingen van incidenten te kunnen behandelen. Zou het niet fijn zijn om in de flow van je werk te kunnen blijven, binnen Teams, en toch al dit soort informatie en hulpmiddelen te kunnen gebruiken?

Om dit mogelijk te maken worden meer en meer apps ontwikkeld, die de gebruiker gewoon binnen de context van Teams kan starten. In het vervolg van dit artikel geef ik een aantal voorbeelden van apps die je binnen Teams kunt gebruiken om je werk efficiënter en gemakkelijker te maken.

Chat, Teams, kanalen & apps

De meeste gebruikers werken al in Teams-omgevingen en maken gebruik van kanalen, vergaderingen en chat. Je kunt werken in de Teams-app op je laptop, via je browser en via allerlei mobiele devices. Je kunt werken met bestanden en communiceren binnen een kanaal waar de focus is op een bepaald onderwerp. De volgende stap is om deze manier van werken verder te verrijken met apps die specifiek bedoeld zijn om jouw werk in Teams eenvoudiger, gemakkelijker en efficiënter te maken. Hieronder zie je een aantal voorbeelden van dit soort apps.

Apps van Derden die je kunt toevoegen in Teams

Mural

Mural

Mural is een whiteboard-app waarin je Post-Its kunt plakken. Deze app kan je ook gebruiken in office.com én outlook.com! Dezelfde app met dezelfde informatie, maar dan dus in meerdere omgevingen. Een handige tool!

Jira en ServiceNow

Jira en ServiceNow

De meeste organisaties hebben wel iets van een ticketing-systeem. De helpdesk wordt gebeld, er wordt een ticket aangemaakt en daar wordt iets mee gedaan. En wat is nou handiger dan dit ticketing-systeem integreren met je vaste werkomgeving! Je kunt nu tools als Jira of ServiceNow ontsluiten via Teams: je integreert de app, en degene die een ticket toegewezen krijgt, krijgt hier een melding van binnen Teams. Je hoeft als medewerker dus nog maar naar één tool te kijken: Teams! En dat is nou precies de ontwikkeling die we steeds meer zien: Teams wordt steeds meer dé plek om in te werken!

Mira en Whiteboard

Digitale whiteboard-apps Mira en Whiteboard

Als je vroeger een vergadering had, had je zo’n groot wit bord op de muur hangen en daar ging je op schrijven, plakken, schema’s op tekenen… Nu je niet meer allemaal in dezelfde kamer zit, is dat lastiger. Maar tools als Miro en Whiteboard geven deze zelfde mogelijkheden! De Whiteboards die worden gemaakt, worden ook opgeslagen en kan je dus ook gemakkelijk weer terug te vinden.

Apps van Microsoft zelf, die het leven gemakkelijker maken

Microsoft heeft een serie apps in het leven geroepen, om het leven van de gemiddelde kenniswerker gemakkelijker te maken. Onder de noemer ‘Microsoft Viva’. Ik zal deze apps stuk voor stuk even doornemen.

Microsoft Viva Connections

Vroeger ging je in je browser altijd automatisch naar het intranet toe. Tegenwoordig start men niet meer met werken in de browser, maar in Teams. Daarom kan je nu met Microsoft Viva Connections ook je intranet inladen in je Teams-omgeving. Zo kan iedereen er nog steeds makkelijk bij.

Microsoft Viva Inzichten (Insights)

Als medewerker krijg je hiervan persoonlijke aanbevelingen over je werkdag. Hoe vaak heb je bijvoorbeeld gefocust kunnen werken, hoeveel tijd heb je in vergaderingen gezeten, heb je wel contact met alle collega’s met wie je contact zou moeten houden? Dit is alleen voor jouzelf inzichtelijk. Er is ook een betaalde versie, waarin managers (ge-anonimiseerd) van hun team de cijfers kunnen inzien. Denk aan ‘mijn team heeft de afgelopen maand gemiddeld 50% buiten normale werktijden gewerkt’. Dan kan je daar als manager op inspelen.

Microsoft Viva Learning

De meeste organisaties hebben wel één of ander leersysteem. In Viva Learning kan je dit Teams binnentrekken. Als medewerker kan je dan in Teams zien welke leermiddelen er klaar staan, of ze juist aanbevolen krijgen (dit alleen bij de betaalde versie).

Microsoft Viva Topics

Deze wordt nog wat minder gebruikt. Topics is een soort geautomatiseerde wikipedia. Het systeem gaat jouw M365-omgeving doorlopen, veelvoorkomende termen ophalen en hiervan een kennispagina opbouwen. Als persoon kan je dit vervolgens redigeren. Topics zoekt ook op wie er expert zijn op een bepaald onderwerp. Je moet hier echter wel voor iedere gebruiker een licentie hebben.

Microsoft Viva Goals

Dit is nog helemaal nieuw! Vanaf Q3 2022 beschikbaar. Hiermee kan je doelen bepalen voor je organisatie, of bijvoorbeeld activiteiten. Je kunt hier mensen aan toewijzen, resources… de tool zal dit tracken en eventueel waarschuwingen over geven. Nog een heel nieuw onderdeel, dus ik kan er nog weinig over zeggen. Ziet er wel veelbelovend uit!

Zelfgebouwde apps integreren

Je kunt ook allerlei functionaliteiten zelf bouwen en integreren. Graag geef ik twee voorbeelden van apps die wij zelf hebben gebouwd voor gebruik binnen ShareValue:

Zelfgebouwde chatbot

ShareBot

ShareBot is een chatbot die wij gebruiken om vragen te kunnen stellen aan ons personeelshandboek. Als ik bijvoorbeeld een vraag heb over ‘waar mag ik parkeren’, kan ik die vraag stellen aan de bot. Soms is het antwoord ‘deze vraag is te ingewikkeld, ik haal er even een mens bij’, maar dan brengt hij je wel direct in contact met de juiste persoon. Wat natuurlijk ook al heel fijn is. Langzamerhand wordt het systeem ook steeds slimmer, dus steeds meer antwoorden krijg je wel direct via de bot.

Deze bot hebben wij zelf gebouwd. Als organisatie kan je dit dus gewoon zelf, zonder enorm ontwikkeltraject zoals je vroeger had bij dit soort bots. Je moet natuurlijk wel weten wat je doet, maar het is wel een stuk eenvoudiger geworden.

Zelfgebouwde app

Werkplek-reserveer-app

Deze app hebben wij gebouwd toen we langzaamaan weer naar kantoor kwamen, maar nog wel met de anderhalve meter afstand en een maximum aantal mensen op kantoor. Hierin konden we dan zien wie wanneer waar zat, zodat we rekening konden houden met de drukte. Het is een heel fijne app die we eigenlijk nog steeds gebruiken zodat we tijdig weten hoeveel mensen er wanneer op kantoor zijn. Dit is ook heel handig voor bijvoorbeeld de lunch!

Deze app is gebouwd in PowerApps door onze collega’s. Het handige is dat deze ook op de mobiele telefoon te openen is. Het gebeurt me vaak dat ik vergeet een werkplek te reserveren, en dat ik dat snel nog even kan doen vanuit de parkeergarage wanneer ik aankom.

Apps beheren in Teams admin

Hoe doe je dit allemaal? Als je Admin-rechten hebt, kan je de Teams Admin Client openen en allerlei instellingen aanpassen. Welke apps zijn toegestaan? Alleen Microsoft-apps? Of ook Apps van derden? Mag iedereen zomaar Apps gaan gebruiken of moet dat eerst goedgekeurd worden?

Beheer de app-mogelijkheden

Als beheerder kan je dit allemaal instellen en inregelen. Zo kan je ervoor zorgen dat jouw collega’s kunnen werken op de manier die voor hen én jouw organisatie het beste werken!

Wil jij ook eens onderzoeken welke apps het beste kunnen bijdragen bij jouw organisatie? Of heb je specifieke wensen waar vooral een zelfgebouwde app het beste bij past? Laat het ons weten! We geven graag advies of bouwen de gewenste app voor je.

Koos Koos / 29-06-2022

5 minuten lezen

Wat is Microsoft Defender for Endpoint nou precies, waar past het binnen het grotere plaatje van Microsoft 365 Defender en wat kan je er allemaal mee? Laatst heb ik hier een presentatie over gegeven tijdens ons evenement ShareVision, maar graag vertel ik het nogmaals in deze blog.

Wat is Microsoft Defender for Endpoint?

Een Endpoint is eigenlijk het apparaat waar jij de gegevens op benadert. Dat kan je laptop zijn, je telefoon, eigenlijk alles waarop je internetverbinding hebt en je bezig bent met bedrijfsdata.

Vaak denken mensen “ik heb toch al Microsoft Defender? Zo heet mijn virusscanner!”. Dat klopt, maar Microsoft Defender for Endpoint is nog een extra laag daar bovenop. Naast de standaardsignalen die een virusscanner oppakt, zijn er nog veel meer verdiepingsslagen die je kan doen. Hier komt Defender voor Endpoint naar voren. Zo werkt Defender voor Endpoint bijvoorbeeld preventief: het voorkomt dat je apparaat geïnfecteerd wordt door een virus, in plaats van reageren wanneer het virus of kwaadwillend bestand al aanwezig is.

Defender voor Endpoint is opgebouwd uit verschillende onderdelen:

De verschillende onderdelen van Microsoft Defender

  1. Bedreigings- en risicobeheer (Threat & Vulnerability Management): wat zijn de huidige bedreigingen op de markt en hoe zorg ik ervoor dat de risico’s zo klein mogelijk blijven?
  2. Kwetsbaarheid voor aanvallen verminderen (Attack surface reduction): door middel van mitigerende technieken voorkomen dat een virus of exploit een ingang kan vinden of worden uitgevoerd.
  3. Beveiliging van de next-generation (Next-generation protection): een tot nu toe onbekende bedreiging wordt gesignaleerd en daar wordt actie op ondernomen.
  4. Endpoint detectie en response: kijkt meer naar de big picture. Als bijvoorbeeld één laptop een virus heeft, dan wordt die geclassificeerd als ‘high risk laptop’. Je kunt een access rule instellen dat laptops die zijn geclassificeerd als high risk, geen toegang hebben tot de bedrijfsdata.
  5. Geautomatiseerd onderzoek en herstel (Automated investigation and remediation): bepaalde regels instellen om minder geavanceerde gevaren te voorkomen en genezen. Hier is dan geen security-expert voor nodig om dit handmatig te doen; dat doet het systeem voor je.
  6. Microsoft Threat experts: voor als je het niet zeker weet, kan je altijd experts online inschakelen die je dan kunnen helpen bij je (mogelijke) infectie.

Plaats binnen Microsoft 365 Defender Suite

Bij Defender voor Endpoint kijk je dus voornamelijk naar de apparaten binnen je organisatie. Maar er zijn nog meer producten binnen Microsoft 365 Defender. Laten we het daar ook even over hebben.

Microsoft Defender for Office 365: als je een Microsoft 365 – licentie hebt, neem je dit eigenlijk al af. In combinatie met Exchange Online Protection heb je dan al een heel sterk beveiligingspakket wat zich bezighoudt met alle Office-programma’s als Word, PowerPoint, Excel (waar nog wel eens bijzondere macro’s inzitten). Exchange Online Protection houdt zich voornamelijk bezig met mails waar bijvoorbeeld bijlages in zitten. Hiermee heb je dus al best veel afgevangen.

Azure AD Identity Protection houdt zicht vooral bezig met Azure AD. En dan heb je ook nog Microsoft Defender for Identity. Deze twee lijken erg op elkaar, maar de laatste houdt zich vooral bezig met de On-Prem Active Directory en AD FS. Deze gaan dus eigenlijk hand in hand, maar de een zit voornamelijk in de cloud, waar de ander echt On-Prem actief is.

De Microsoft Defender Suite

Alle signalen samen, van die verschillende pakketten, kan je terugvinden in de Defenderportal. Die portal laat ik aan het eind van deze blog even zien in een video.

Defender in actie

Een casus ter voorbeeld!

Stel: er komt een mailtje binnen met een bijlage die niet pluis is. Als die bijlage bekend is en het echt niet de bedoeling is dat deze bijlage geopend wordt, is daar Exchange Online Protection die dat oppakt.

Wordt het niet opgepakt en wordt de malware geïnstalleerd (of geprobeerd), dan komt Defender for Endpoint om de hoek kijken en onderneemt de actie. Heb je dat pakket niet of gebeurt er iets anders waardoor het niet wordt opgepakt? Dan komen de andere pakketten in actie. Is het bijvoorbeeld een fishing-praktijk en komt de aanvaller aan de gegevens van de gebruiker, zoals gebruikersnaam en wachtwoord, dan komt Defender for Identity om de hoek kijken. Die ziet bijvoorbeeld dat je vijf minuten geleden nog aan je bureau zat in Amsterdam en nu ineens in Sint Petersburg. Dat is raar, een ‘impossible travel’, dus log maar even in met een two-factor-authentication. Verifieer maar even dat jij het echt bent.

Microsoft Cloud App Security houdt zich meer bezig met signaleren dan met echt in actie komen. Als je ineens veel meer data verbruikt dan eerst bijvoorbeeld: dan geeft het aan ‘dit is niet gebruikelijk! Hier moet iemand van Security naar kijken!’

Licenties

Er zijn twee plannen voor Microsoft Defender for Endpoint: plan 1 en plan 2. Als je Microsoft 365 E3 hebt, heb je al Plan 1. Als je E5 hebt, heb je plan 2. Wat is nou het verschil?

Plan 1:

Microsoft Defender for Endpoint plan 1

Bij plan 1 heb je voornamelijk de Attack Surface Reduction (voorkomt dat dingen gebeuren) en de Next Generation Protection.

Plan 2:

Microsoft Defender for Endpoint plan 2

Hier heb je meer inzichten. Geautomatiseerde reacties. En je kunt de Threat Experts inschakelen (dat kan bij Plan 1 ook, maar daar zal je dan een aparte Add-on licentie voor moeten afnemen ).

Meer weten over licenties en hoe ShareValue je daarbij kan helpen? Neem dan vooral eens contact op!

De Microsoft 365 Defender Portal

In onderstaande video geef ik een korte demo van de Microsoft 365 Defender Portal.

Accepteer cookies om deze video te bekijken.

Mocht je nou nog vragen hebben over Microsoft 365 Defender for Endpoint en hoe je dit in kunt zetten bij jouw organisatie: laat het ons weten! Ik denk graag met je mee.

Michiel Michiel / 23-06-2022

3 minuten lezen

Vorige maand was alweer de zesde Tech Thursday die ik organiseerde en de tweede die ook toegankelijk is voor iedereen die geïnteresseerd is; waarom zouden we stoppen met delen bij de voordeur?

Terug naar het onderwerp van de laatste sessie: testen, testen en testen. Aan de titel van het blog kan je lezen dat er één keer testen afgevallen is. Waar ik het bij mijn presentatie over de drie bekendste frameworks had: MS-Test (v2), nUnit en xUnit, spits ik me nu toe tot twee andere interessante ontwikkelingen. Over bUnit heb ik toen ook al gesproken, maar aan het eind van mijn presentatie werd ik door een externe deelnemer gewezen op een andere package, Stryker Mutator.

bUnit

bUnit

Ik ga het echter eerst over bUnit hebben. Met bUnit kan je Blazor-componenten testen en het werkt altijd in combinatie met één van de andere drie testframeworks. Met bUnit is de Blazor-cirkel rond: van Back-End tot Front-End kan het geheel in C# opgezet worden, inclusief alle (unit)testen.

bUnit is dus bedoeld om een component te renderen en hier acties op uit te voeren en te testen of de output dan aan de verwachting voldoet. En dit kan meegenomen worden in een build pipeline.

Testen met bUnit kan in een normaal C# bestand (.cs) of in een Razor bestand (.razor).

Het voordeel van Razor bestanden is dat het volgende mogelijk is:

 

@inherits TestContext;

@code   
{

    [Fact]
    public void HelloWorldComponentRendersCorrectly()
    {
        var cut = RenderComponent<HelloWorld>();
        cut.MarkupMatches(@<h1>Hello world from Blazor</h1>);
    }
}


De markup kan dus gewoon door middel van het @ teken toegevoegd worden zonder allerlei andere escape tekens. Daarnaast negeert bUnit allerlei opmaak binnen HTML zoals tabs, spaties en enters.

Wil je echter gebruik maken van testen in Razor, dan is het handig om niet met het framework te beginnen (dus niet bijvoorbeeld een xUnit Test Project aanmaken), maar met een ASP.NET Core Empty project. Vervolgens voeg je de gebruikelijke NuGet packages toe om te testen.

Met C# 11 wordt het wellicht weer makkelijker om gewone C#-bestanden te gebruiken, omdat daar een interessante manier wordt geïntroduceerd die “raw string literals” heet .

 

var location = $$"""
   You are at {{{Longitude}}, {{Latitude}}}
   """;


 

Door drie quotes (of meer) te gebruiken, wordt een “raw string literal” gemaakt. Daarnaast heeft het aantal dollartekens aan hoeveel accolades er nodig zijn voor string interpolation.

Zoals het voorbeeld laat zien, is het niet gelijk aan bovenstaande code, maar hierdoor kan het gebruikt van C#-bestanden wel een overweging zijn.

Meer informatie over bUnit vind je hier.

Stryker Mutator

Stryker Mutator

Dat delen met iedereen een voordeel blijkt te hebben, geeft dit deel van de blog wel aan. Stryker was voor mij onbekend en deze interactie was precies waar ik naar zocht toen ik de Tech Thursday toegankelijk wilde maken voor iedereen.

Stryker Mutator is een project van InfoSupport met het doel om de kwaliteit van unit tests te verhogen. Stryker Mutator maakt aanpassingen aan je code waardoor er mutanten ontstaan. Goede unit tests zouden vervolgens moeten falen om gemuteerde code te ontdekken. Als (alle) unit tests slagen dan betekent dit dat de gewijzigde code niet afgedekt wordt door de unit tests.

Een simpel voorbeeld is de volgende code:



public bool IsAdult(int age)   
{
    return age >= 18;
}


 

Stryker zal deze code muteren door de code te wijzigen in:



public bool IsAdult(int age) 
{
    return age < 18;
}



 

Als je bovenstaande code test, dan krijg je nu een omgekeerd resultaat waardoor je test faalt en de mutant wordt uitgeschakeld.

In combinatie met een goede code coverage tool (zoals bijvoorbeeld SonarQube), is dit een waardevolle tool die ingezet kan worden bij Pull Requests: Stryker kan ingezet worden in build pipelines. Dan wordt niet alleen de code coverage gecontroleerd, maar ook de kwaliteit van de unit test.

Voor meer informatie over Stryker klik hier. Wijzigingen die Stryker Mutator allemaal kan doen, vind je hier en de NuGet package staat hier.

{description}

Heb je een Microsoft Expert nodig?

Neem contact met ons op
{description}

Zoek je een nieuwe baan?

Bekijk onze vacatures