6. 0
5
10
15
20
25
30
35
40
CA 2014 CA 2015 CA 2016 CA 2017 CA 2018 Obj. CA 2019
Une société en forte croissance
5 M€
8,5 M€
16,5 M€
27,7M€
35 M€
+ 67 %
Effectifs
2014
28
2016
79
2015
59
Une relation
de confiance
Création fin 2011
Laurent Cayatte
Président
Yannick Varloud
Directeur Général
11 M€
Obj. 2019
300
Socialement
responsable
2017
103
7 agences en France
1
2
3
Satisfaction
Transparence
Engagement2018
200
9. Intune, Intune: c’est quoi au juste ?
• Service Cloud disponible dans le portail Azure
• Connexion via compte Azure AD
• Gérer appareils mobiles et PC de vos utilisateurs
• Gérer les applications PC et mobiles (installation, déploiement…)
• Permettre le BYOD à vos utilisateurs
• Vérifier que vos appareils répondent aux exigences de sécurité
• Déployer applications, fond d’écran, lockscreen, restrictions…
#PSSATPARIS2019
10. Les licences Intune
• Microsoft 365 E5
• Microsoft 365 E3
• Enterprise Mobility + Security E5
• Enterprise Mobility + Security E3
• Microsoft 365 Business
• Microsoft 365 F1
• Microsoft 365 Education A5
• Microsoft 365 Education A3
#PSSATPARIS2019
Intune for Education ?
Choisir entre Intune for education et Intune
11. Tester Intune gratuitement
• Configuration de Intune: ici
• Autopilot en action: ici
• Gérer vos appareils: ici
#PSSATPARIS2019
13. Non SCCM n’est pas mort
• SCCM & Intune co-existence and Co-Management is the future!
#PSSATPARIS2019
14. Intune et les ressources
Trouver la bonne ressource
#PSSATPARIS2019
15. Des ressources pour quoi faire ?
• Composants de Intune sont des ressources
• Il faut savoir sur quoi on veut agir avant d’intéragir avec Posh
• Se rendre dans la doc de Graph pour trouver son équivalent
#PSSATPARIS2019
17. Microsoft Graph ?
• Accéder aux ressources de Office 365
• Principe: Les ressources sont interconnectées
• Office 365: Excel, Teams, OneDrive, OneNote, Outlook…
• EMS: ATA, ATP, Azure AD, Intune
• Windows 10: Activités, appareils, notifications
#PSSATPARIS2019
18. Microsoft Graph, pour faire quoi ?
• Analyse du calendrier pour trouver les meilleures heures pour la
prochaine réunion d’équipe
• Examine la prochaine réunion et fournit informations sur le profil des
participants
• Lister les machines inscrites dans Intune et lister toutes les informations.
• Effectuer des actions à distance sur des machines: redémarrer, réinitialiser,
connexion à distance, scan antivirus
• Création d’utilisateurs, groupes dans Azure AD
• Déployer des applications sur vos appareils
#PSSATPARIS2019
19. Utiliser Graph API
• Comment utiliser Graph API ?
• Deux versions de l’API: Beta, v1.0
• Plusieurs méthodes pour agir sur les ressources: GET, PATCH, POST, DELETE
• Méthodes POST et PATCH requiert de fournir un JSON
• Action via une requête HTTP
• Method + https://graph.microsoft.com/$Version_API/$Resource
• Trouver la bonne ressource en utilisant les docs de références
• On va cherche les appareils gérés, managed devices
• Lister les appareils: GET /deviceManagement/managedDevices
• Pour une machine: GET /deviceManagement/managedDevices/ID
#PSSATPARIS2019
20. Les permissions pour utiliser Graph
• En fonction de ce que l’on souhaite faire, il faut des permissions
• Lister les permissions requises pour une ressource sur le lien de référence.
• Exemple pour les appareils gérés
#PSSATPARIS2019
Reference
22. Graph Explorer, c’est quoi ?
• Site web permettant d’effectuer des requêtes Graph sur O365 ou Intune
• Se connecter
• Choisissez la méthode: GET, PATCH, POST, DELETE
• Choisissez version API: v1.0 ou Beta
• Saisissez le lien de votre ressource
• https://developer.microsoft.com/en-us/graph/graph-explorer
• /deviceManagement/managedDevices
• /deviceManagement/managedDevices/ID
#PSSATPARIS2019
23. Les permissions depuis Graph Explorer
• Vérifier les permissions requises
• Cliquer sur modify your permissions
• Appliquer les bonnes permissions
• Recommencer
#PSSATPARIS2019
24. Partie JSON: pour modifier ou créer
• Affiche le résultat de votre requête
• Réutiliser un template pour pouvoir modifier une ressource
#PSSATPARIS2019
26. Action sur un device
• /deviceManagement/managedDevices/ID de la machine
• Différentes actions
• Voir équivalent sur la doc de l’API
• Reboot d’une machine en action
#PSSATPARIS2019
Depuis Intune
Depuis Graph
27. Autres exemples de ressources
• Profile de déploiement Autopilot
• Trouver la bonne ressource: ici
• beta/deviceManagement/windowsAutopilotDeploymentProfiles
• Liste des utilisateurs
• Trouver la bonne ressource: ici
• beta/users
• Lister les conditions et termes
• Trouver la bonne ressource: ici
• Beta/deviceManagement/termsAndConditions
#PSSATPARIS2019
28. Créer un nouveau profil
• Choisir méthode POST
• beta/deviceManagement/windowsAutopilotDeploymentProfiles
• Exemple de query
#PSSATPARIS2019
{
"@odata.type": "#microsoft.graph.azureADWindowsAutopilotDeploymentProfile",
"displayName": "mon nouveau profil",
"description": "My profile description",
"enrollmentStatusScreenSettings": null,
"extractHardwareHash": false,
"deviceNameTemplate": "",
"deviceType": "windowsPc"
}
29. Modifier un profil existant
• Choisir méthode PATCH
• beta/deviceManagement/windowsAutopilotDeploymentProfiles/ID du profil
• Exemple de query
#PSSATPARIS2019
{
"@odata.type": "#microsoft.graph.azureADWindowsAutopilotDeploymentProfile",
"displayName": "mon nouveau profil",
"description": "Ma nouvelle description",
"enrollmentStatusScreenSettings": null,
"extractHardwareHash": false,
"deviceNameTemplate": "",
"deviceType": "windowsPc"
}
30. Supprimer un profil existant
• Choisir méthode DELETE
• beta/deviceManagement/windowsAutopilotDeploymentProfiles/ID du profil
#PSSATPARIS2019
31. Créer un nouvel utilisateur
• Choisir méthode POST
• beta/users
• Modifier les permissions si besoin
• Exemple de query – Voir exemple sur Doc Graph
#PSSATPARIS2019
{
"accountEnabled": true,
"displayName": "Thomas Shelby",
"mailNickname": "Group1",
"userPrincipalName": "ThomasShelby@damvanrobaeysgmail.onmicrosoft.com",
"passwordProfile" : {
"forceChangePasswordNextSignIn": true,
"password": "P@$$w0rd"}
}
32. Modifier un utilisateur existant
• Choisir méthode PATCH
• beta/users/ID de l’utilisateur
• Exemple de query
#PSSATPARIS2019
{
"accountEnabled": true,
"displayName": "Thomas Shelby",
"mailNickname": "Group1",
"jobTitle": "System engineer",
"userPrincipalName": "ThomasShelby@damvanrobaeysgmail.onmicrosoft.com"
}
33. Supprimer un utilisateur existant
• Choisir méthode DELETE
• beta/users/ID de l’utilisateur
#PSSATPARIS2019
34. Action sur une machine (ou plusieurs)
• Choisir méthode POST
• Voir les actions disponibles: ici
• beta/deviceManagement/managedDevices/ID de la machine
• Reboot: beta/deviceManagement/managedDevices/ID de la machine/rebootnow
• Wipe: beta/deviceManagement/managedDevices/ID de la machine/wipe
#PSSATPARIS2019
36. Méthode 1
• Deux fonctions:
Get-AuthToken Créer un token d’authetifcation
Connect-AutoPilotIntune Connexion à Intune
• Installation module Azure AD
• Load les assemblies ADAL (Active Directory Authentication Library)
• Vous permet d’obtenir un token pour accéder aux API web comme Graph
#PSSATPARIS2019
37. Connexion à Intune
• Deux fonctions:
Get-AuthToken
Connect-AutoPilotIntune
• Disponibles dans le module Autopilot de MS
• Accessibles sur le GitHub du FRPSUG
• Copier les deux fonctions
• Saisir Connect-AutoPilotIntune
• Saisir ses credentials
#PSSATPARIS2019
38. Interroger Intune
• Cmdlet: Invoke-RestMethod
• $authToken: Variable permettant d’obtenir le token pour se connecter
• Ajout -Uri « URL » -Headers $authToken –Method Get/Post/Patch/Delete
• Création et update: Ajout -Body puis le fichier JSON
#PSSATPARIS2019
39. Créer un nouveau profil
• Cmdlet: Invoke-RestMethod
#PSSATPARIS2019
$MyProfile = @"
{
"@odata.type": "#microsoft.graph.azureADWindowsAutopilotDeploymentProfile",
"displayName": "My new profile for test2",
"description": "",
"language": "en-US",
"extractHardwareHash": false,
"deviceType": "windowsPc",
}
"@
$Resource = "beta/deviceManagement/windowsAutopilotDeploymentProfiles"
Invoke-RestMethod -Uri "https://graph.microsoft.com/$Resource" -Headers $authToken -Body $MyProfile -Method Post
41. Supprimer un profil existant
• Cmdlet: Invoke-RestMethod et ajouter l’ID du profil
#PSSATPARIS2019
$Resource = "beta/deviceManagement/windowsAutopilotDeploymentProfiles/0863f75e-4f7b-4dcf-830f-882924c17b41"
Invoke-RestMethod -Uri "https://graph.microsoft.com/$Resource" -Headers $authToken -Method Delete
42. Méthode 2: Module Graph.Intune
Chargement du module
Module PowerShell
Connexion à Intune
Pour accéder aux ressources
Interroger Intune
Lister, modifier, créer, supprimer
43. Microsoft.Graph.Intune
• Module Microsoft sur PSGallery
• SDK disponible sur GitHub
• Vous permet d’accéder à intune en utilisant l’API Graph
• Installation module via install-module
• Import du module via import-module
#PSSATPARIS2019
Install-Module Microsoft.Graph.Intune
Import-Module Microsoft.Graph.Intune
44. Contenu du module
• Le module contient à ce jour 1056 cmdlets
• Lister les cmdlets pour gérer les devices: 50
• Lister les cmdlets pour gérer les profil de déploiement: 0
#PSSATPARIS2019
46. Créer requête personnalisée
• Si pas de cmdlets pour ce que l’on cherche à faire
• Exemple: gestion des profils de déploiement
• Cmdlet: Invoke-MSGraphRequest
• Invoke-MSGraphRequest -Url "Votre_URL" -HttpMethod Get/Post/Patch/Delete
• Pour update ou création: ajouter -Content « Votre_JSON »
#PSSATPARIS2019
47. Lister les appareils
• Cmdlet: Get-DeviceManagement_ManagedDevices
• Pas toutes les informations
#PSSATPARIS2019
48. Créer un nouveau profil
• Cmdlet: Invoke-MSGraphRequest
#PSSATPARIS2019
$MyProfile = @"
{
"@odata.type": "#microsoft.graph.azureADWindowsAutopilotDeploymentProfile",
"displayName": "My new profile for test2",
"description": "",
"language": "en-US",
"extractHardwareHash": false,
"deviceType": "windowsPc",
}
"@
$Resource = " beta/deviceManagement/windowsAutopilotDeploymentProfiles "
Invoke-MSGraphRequest -Url "https://graph.microsoft.com/$Resource" -HttpMethod Post -Content $MyProfile
49. Action sur un device
• Cmdlet: Invoke-MSGraphRequest
#PSSATPARIS2019
$MyProfile = @"
{
"@odata.type": "#microsoft.graph.azureADWindowsAutopilotDeploymentProfile",
"displayName": "My new profile for test2",
"description": "",
"deviceType": "windowsPc",
}
"@
$Resource = "beta/deviceManagement/windowsAutopilotDeploymentProfiles"
Invoke-MSGraphRequest -Url "https://graph.microsoft.com/$Resource" -HttpMethod Post -Content $MyProfile