Sylver SCHORGEN Blog's

Articles, astuces et news sur les technologies Microsoft et plus particulièrement tournant autour de Powershell
    • 2/5/2018

    [POWERSHELL] DSC Resource Kit Release May 2018

    Hi everyone,

    Microsoft just released an update of the DSC Resource Kit. 12 modules have been updated :

        ActiveDirectoryCSDsc (previously xAdcsDeployment)
        CertificateDsc (previously xCertificate)
        ComputerManagementDsc (previously xComputerManagement)
        DFSDsc (previously xDFS)
        SqlServerDsc
        xDnsServer
        xDscResourceDesigner
        xExchange
        xNetworking
        xPendingReboot
        xSMBShare
        xWebAdministration

    For more details => https://blogs.msdn.microsoft.com/powershell/2018/05/02/dsc-resource-kit-release-may-2018/

    • 2/5/2018

    [POWERSHELL] Release du ressource kit DSC de mai 2018

    Hello tout le monde,

    Microsoft a sorti son ressource kit DSC de mai 2018. Les mises à jour apportées touchent 12 modules :

    • ActiveDirectoryCSDsc (previously xAdcsDeployment)
    • CertificateDsc (previously xCertificate)
    • ComputerManagementDsc (previously xComputerManagement)
    • DFSDsc (previously xDFS)
    • SqlServerDsc
    • xDnsServer
    • xDscResourceDesigner
    • xExchange
    • xNetworking
    • xPendingReboot
    • xSMBShare
    • xWebAdministration

    Pour plus de détail => https://blogs.msdn.microsoft.com/powershell/2018/05/02/dsc-resource-kit-release-may-2018/

    • 7/4/2018

    [OFFICE 365] Office 365 Attack Simulator

    Hello,

    Microsoft launched a new feature in Office 365 called Office 365 Attack Simulator. According to Microsoft, "you can run realistic attack scenarios in your organization. This can help you identify and find vulnerable users before a real attack impacts your bottom line". This feature can help your security team to do Phishing attack, Password-spray attack and Brute-force password attack. This feature is available in Office 365 E5 plans.

    If you want more details, I invite you to read these articles :

    • 6/4/2018

    Présentation des outils collaboratifs de la suite Office 365 aux BTS Assistants Manager

    J'ai eu l'honneur de présenter, durant une session de 2h, les outils collaboratifs de la suite Office 365 aux BTS Assistants Manager du Lycée Lapérouse.

    Je tenais à remercier les professeurs de m'avoir donner l'opportunité de réaliser cette session devant 25 élèves déjà bien au fait de la collaboration (génération Z hey hey ;))

    Durant cette présentation, nous avons pu discuter des éléments suivants :

    • Les enjeux du collaboratif en entreprise
    • La frontière social / collaboratif
    • La mobilité
    • Les outils collaboratifs d'Office 365 (Skype, Yammer, SharePoint, Teams, ...)

    Pour ceux qui souhaite accéder à cette présentation, c'est par ici : https://www.slideshare.net/SylverSCHORGEN/la-collaboration-en-entreprise

    • 6/4/2018

    Petit Déjeuner numérique MEDEF NC - La GED et la collaboration avec SharePoint et Office 365

    Dans le cadre des Petit-déjeuners du MEDEF-NC, en collaboration avec Julien CHABLE (MVP SharePoint / Office 365), nous avons eu l’occasion de présenter aux entreprises locales les fonctionnalités de SharePoint/O365 dans le domaine de la gestion de contenu et de la GED.

    Les entreprises font actuellement face à la transistion digitale et se doivent d'être les plus compétitves possibles, tant sur le plan local que sur le plan international pour certaine. Les enjeux de la collaboration et la gestion electronique des documents n'ont jamais été aussi importants.

    S'orienter vers du “sans-papier” est aussi un point important tant sur le plan économique qu'écologique.

    Pour ceux qui souhaite consulter la présentation, c'est par ici : https://www.slideshare.net/SylverSCHORGEN/la-ged-et-le-collaboratif-avec-office-365

    • 5/4/2018

    Thank you Microsoft for the MVP Award !

    I received a very nice email on April 2, 2018 (New Caledonia timezone) from Microsoft telling me that I was awarded as a Microsoft Most Valuable Professional (MVP).

    According to Microsoft, "Microsoft MVPs are a select group of experts who represent technology’s best and brightest, and share a deep commitment to their communities". I'm very honored to be awarded as an MVP by Microsoft ! Thank you Microsoft !

    I would like to thanks Martine Tiphaine (MVP Community Program Manager for New Caledonia) for the help with my application. I also would like to thanks Julien CHABLE for recommanded my name to the MVP Award Review Comitee, animating the MS Afterworks in New Caledonia with me and all his support ;).

    Finally, I would like to thank my family, friends, colleagues and employer for supporting me and challenging me in everything I'm doing !

    Thanks again everyone !

    • 23/3/2018

    [POWERSHELL] Release du ressource kit DSC de mars 2018

    Hello tout le monde,

    Microsoft a sorti sont ressource kit DSC de mars 2018. Les mises à jour apportées touchent 7 modules (SharePointDsc, SqlServerDsc, xActiveDirectory, xComputerManagement, xFailOverCluster, xNetworking, xPSDesiredStateConfiguration). 37 problèmes ont été corrigés avec cette release.

    Pour plus de détail sur ces updates -> https://blogs.msdn.microsoft.com/powershell/2018/03/21/dsc-resource-kit-release-march-2018/ 

    • 23/3/2018

    [WINDOWS SERVER] Preview de Windows Server 2019

    Bonjour tout le monde,

    Microsoft a annoncé il y a quelques jours, la disponibilité de Windows Server 2019 en Preview.

    Les orientations de cette nouvelle mouture :

    • Les infrastructures hyperconvergées
    • Les plateformes applicatives
    • Les scenarios hybrides
    • La sécurité

    Pour plus de détail sur chacun de ces éléments, l'article officiel -> https://cloudblogs.microsoft.com/windowsserver/2018/03/20/introducing-windows-server-2019-now-available-in-preview/

    Si vous voulez téléchargement cette Preview : https://insider.windows.com/en-us/for-business-getting-started-server/

    • 5/3/2018

    [POWERSHELL] Installer les outils PowerShell pour Office 365 en PowerShell DSC

    Bonjour tout le monde,

    J'ai tendance à utiliser et pousser du DSC partout où je le peux ^_^

    Pour l'installation des outils PowerShell pour Office 365, j'ai également créé mon petit script DSC pour cela. Le seul élément que j'installe "manuellement" est le module Azure ActiveDirectory (MSOnline) en tapant la commande : Install-Module MSOnline.

    Pour le reste, voici le script DSC que j'utilise (il faut au préalable télécharger msoidcli64.msiSharePointOnlineManagementShell.msi et SkypeOnlinePowerShell.exe et les mettre dans le dossier C:\Sources\Office365 dans le cas de notre script) :

    Configuration InstallO365Tools
    {
    Node "swi-adfs16-qul.intranet.opt"
    {
    Package MsoidPS
    {
    Ensure = "Present"
    Name = "Microsoft Online Services Sign-in Assistant"
    Path = "C:\Sources\Office365\msoidcli_64.msi"
    ProductId = 'D8AB93B0-6FBF-44A0-971F-C0669B5AE6DD'
    }
    Package SPOPS
    {
    Ensure = "Present"
    Name = "SharePoint Online Management Shell"
    Path = "C:\Sources\Office365\SharePointOnlineManagementShell_7317-1200_x64_en-us.msi"
    ProductId = '95160000-115B-0409-1000-0000000FF1CE'
    DependsOn = "[Package]MsoidPS"
    }
    Package SkypeForBusinessPS
    {
    Ensure = "Present"
    Name = "Skype Online Management Shell"
    Path = "C:\Sources\Office365\SkypeOnlinePowershell.exe"
    ProductId = ''
    Arguments = '/s'
    DependsOn = "[Package]SPOPS"
    }
    }
    }

    #InstallO365Tools -OutputPath "C:\Sources\DSC\InstallO365Tools"
    #Start-DscConfiguration -Path "C:\Sources\DSC\InstallO365Tools" -wait -verbose -Force
    • 5/3/2018

    [POWERSHELL] Installer PowerCLI Core 1.10.0

    Hello tout le monde,

    Vous l'avez surement vu dans les news récentes, VmWare a publié PowerCLI Core pour PowerShell Core 6. Le gros avantage de cette version est qu'il est possible de l'installer sur Linux, MacOS et Windows :-)

    L'installation est extrêmement simple :

    1. Lancez PowerShell Core
    2. Tapez la commande Install-Module -Name VMware.PowerCLI -Scope CurrentUser
    3. Attendez que l'installation se termine ;)

    Une fois l'installation terminée, vous pouvez lister les modules disponibles pour vous assurez que l'installation s'est corectement terminée : Get-Module -Name "*VmWare*" -ListAvailable

    Il ne vous reste plus qu'à développer vos scripts, depuis n'importe quel plateforme :-)

    • 3/2/2018

    [POWERSHELL] Se connecter à Exchange Online

    Voici les 3 lignes de PowerShell nécessaires pour se connecter à Exchange Online :

    $Credentials = Get-Credential
    $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $Credentials -Authentication Basic -AllowRedirection
    Import-PSSession $Session
    La première ligne de PowerShell vous promptera pour entrer le login / mot de passe d'un compte administrateur Office 365.
    • 3/2/2018

    [POWERSHELL] Connect to Exchange Online

    You'll find bellow the 3 PowerShell lines necessary to connect to Exchange Online :

    $Credentials = Get-Credential
    $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $Credentials -Authentication Basic -AllowRedirection
    Import-PSSession $Session
    The first line will result by prompting you for an Office 365 login and password.
    • 2/2/2018

    [POWERSHELL] Compter le nombre de mails reçus par un domaine spécifique

    Bonjour tout le monde,

    Ces derniers temps, je développe pas mal de script de statistiques pour des clients ou pour de l'interne. Récemment, j'ai eu besoin de créer un script qui permettait, en autre, de compter le nombre de mails reçus par un domaine spécifique. Ceci me permet de connaître le nombre de mails reçus durant les 7 derniers jours en provenance d'un domaine spécifique.

    Commençons par la commande PowerShell permettant de récupérer la liste des mails envoyés par un domaine spécifique durant les 7 derniers jours :  

    Get-MessageTrace -StartDate (Get-Date).Adddays(-7) -EndDate (Get-Date) -SenderAddress *@domaine.com

    Cette commande dispose de plusieurs paramètres :

    • -StartDate (Get-Date).AddDays(-7) : Permet d'indiquer que la date de début correspond à celle d'il y a 7 jours
    • -EndDate (Get-Date) : Permet d'indiquer que la date de fin correspond à aujourd'hui
    • -SenderAddress *@domaine.com : Permet d'indiquer que nous cherchons tous les mails en provenance du domaine domaine.com

    Une fois que nous avons ce résultat, il ne nous reste plus qu'à utiliser la propriété .Count de l'objet retourné pour connaître le nombre de mails total. La commande finale est donc celle-ci : (Get-MessageTrace -StartDate (Get-Date).Adddays(-7) -EndDate (Get-Date) -SenderAddress *@domaine.com).Count

    On constatera ici que le domaine @domaine.com nous a envoyé 1 000 mails.

    • 25/1/2018

    [POWERSHELL] Ajouter une machine distante dans le TrustedHost

    Hello tout le monde,

    En ce moment je fais pas mal d'Azure et une chose que je fais à chaque nouvelle VM de créée, c'est d'ajouter l'IP de la VM dans mon TrustedHost. En effet, n'étant pas dans le même domaine, c'est une obligation.

    Voici la commande PowerShell qu'il est indispensable de taper : Set-Item WSMAN:\localhost\Clients\TrustedHost -Value votre_ip

    Il faut avoir, bien entendu, lancer votre console PowerShell en tant qu'administrateur. Suite à cela, vous pourrez effectuer du PSRemoting sur cette machine. Cela fonctionne également avec les IP publiques (comme pour Azure ;))

    • 25/1/2018

    [POWERSHELL] Add a remote machine to your TrustedHost

    Hi everyone,

    I'm doing a lot a Azure IAAS those days and one thing I need to do for each VM I create on Azure is to add the public IP to my TrustedHost in order to do some PSRemoting (because these servers are not in my domain).

    Here is the command you need to enter on your computer to add an IP to your TrustedHost : Set-Item WSMAN:\localhost\Clients\TrustedHost -Value votre_ip

    Your PowerShel console must be launched as an Administrator.

    • 24/1/2018

    [POWERSHELL]Installer PowerShell Core 6.0 sur Mac OS

    Hello tout le monde,

    Afin de pouvoir installer et utiliser PowerShell sur Mac OS, commencez par télécharger le .pkg à cette adresse : https://github.com/PowerShell/PowerShell.

    Suite au téléchargement, installez PowerShell sur votre Mac.

    Après l'avoir installez, il ne vous reste plus qu'à lancer une console et de taper pwsh afin de lancer PowerShell.

    • 20/1/2018

    [POWERSHELL] Disable Active Directory Synchronization with Office 365

    Hi everyone,

    Just a little reminder on how to disable Active Directory synchronization between your On-Premise Active Directory and Azure AD.

    1. Connect to Office 365 by using PowerShell with an administrator account : Connect-MSOLService
    2. Execute the following command : Set-MsolDirSyncEnabled -EnableDirSync $false

    I use this command a lot in my lab environment when I need to try some stuff for my clients before to configure them in their tenants !

    • 20/1/2018

    [POWERSHELL] Désactiver la synchronisation AD Office 365

    Hello tout le monde,

    Un petit article pense bête pour vous (et surtout pour moi) sur comment désactiver la synchronisation Active Directory au niveau d'Office 365.

    1. Connectez-vous à Office 365 en PowerShell avec un compte administrateur du tenant : Connect-MSOLService
    2. Lancez la commande suivante : Set-MsolDirSyncEnabled -EnableDirSync $false

    C'était un bref article sur la désactivation de la synchronisation AD vers Office 365 mais si vous cherchez la commande elle est là ;) C'est souvent quelque-chose que je fais sur mon tenant de lab afin de valider certaines conf clients par exemple (avant de les déployer en prod) !

    • 27/11/2017

    [PowerShell] Déployer Active Directory en utilisant PowerShell DSC

    Bonjour à tous,

    Je me suis fait un petit script DSC pour le déploiement de mes infra AD de test (1 seul contrôleur de domaine). Ce script me permet de déployer mes DC bien plus rapidement que si je le faisais à la main.

    Il faut disposer des modules xComputerManagement et xActiveDirectory pour que ce script soit fonctionnel.

    Le script dispose de paramètre obligatoire :

    • AdministratorLogin: Le nom de votre utilisateur administrateur
    • AdministratorPassword: Le mot de passe de votre utilisateur administrateur
    • ServerName : Le nom du serveur (il sera renommé ainsi)
    • WorkGroupName : Le nom du workgroup dans lequel le serveur est (avant le déploiement d'ADDS)
    • DomainName : Le nom de votre domaine

    Le script a été créé pour s'appliquer sur une machine (le noeud configuré dans le script est "localhost").

    La dernière ligne du script #Start-DSCConfiguration -Wait -Force -Path 'C:\_Me\Sources\MOF_Files\ConfigureFirstDomainController' est à utiliser pour appliquer la configuration à votre machine.

    Suite à l'application du script, votre serveur disposera d'ADDS et DNS de déployés (et des consoles d'administration associées).

    $AdministratorLogin = 'Administrator'
    $AdministratorPassword = 'P@$$w0rd'
    $SecurePassword = ConvertTo-SecureString $AdministratorPassword -AsPlainText -Force
    $AdministratorCredential = New-Object System.Management.Automation.PSCredential ($AdministratorLogin, $SecurePassword)

    Configuration ConfigureFirstDomainController {
    param (
    [string[]]$NodeName ='localhost',
    [Parameter(Mandatory)][string]$ServerName,
    [Parameter(Mandatory)][string]$WorkgroupName,
    [Parameter(Mandatory)][string]$DomainName
    )

    #Import required DSC resources (must be installed first)
    Import-DSCResource -Module xComputerManagement
    Import-DSCResource -Module xActiveDirectory

    Node $NodeName {
    xComputer ComputerNameAndWorkgroup {
    Name = $ServerName
    WorkGroupName = $WorkgroupName
    }

    WindowsFeature ADDS {
    Ensure = 'Present'
    Name = 'AD-Domain-Services'
    IncludeAllSubFeature = $true
    }

    WindowsFeature RSAT {
    DependsOn = '[WindowsFeature]ADDS'
    Ensure = 'Present'
    Name = 'RSAT-AD-Tools'
    IncludeAllSubFeature = $true
    }

    xADDomain SetupFirstDomain {
    DomainAdministratorCredential = $AdministratorCredential
    DomainName = $DomainName
    SafemodeAdministratorPassword = $AdministratorCredential
    DependsOn = '[WindowsFeature]RSAT'
    DomainNetbiosName = $DomainName.Split('.')[0]
    }
    }
    }

    $ConfigurationData = @{
    AllNodes = @(
    @{
    NodeName = 'localhost';
    PSDscAllowPlainTextPassword = $true
    }
    )
    }

    ConfigureFirstDomainController -NodeName "localhost" -ServerName "SRV-AD1" -WorkgroupName "LAB" -DomainName "LAB.LAN" -OutputPath 'C:\_Me\Sources\MOF_Files\ConfigureFirstDomainController' -ConfigurationData $ConfigurationData
    #Start-DSCConfiguration -Wait -Force -Path 'C:\_Me\Sources\MOF_Files\ConfigureFirstDomainController'
    • 27/9/2017

    [SharePoint] Microsoft Migration Tool

    Hi everyone,

    Microsoft annonced and published a tool to migrate data from a file share, SharePoint On-Premise or  CSV file (for bulk migration) to SharePoint Online ! That is terrific !

    I look forward to using this tool in one of my future migration and will keep you posted :-)

    The official article is here : https://techcommunity.microsoft.com/t5/SharePoint-Blog/Introducing-the-SharePoint-Migration-Tool-from-Microsoft/ba-p/109767

    • 26/9/2017

    [SharePoint] Outil de migration Microsoft

    Hello tout le monde,

    Microsoft a profité de l'Ignite afin d'annoncer un outil de migration vers SharePoint Online (depuis un partage réseau, un SharePoint On-Premise ou un fichier CSV pour un import en masse) :-)

    J'ai hâte de pouvoir tester cet outil afin de pouvoir vous en faire un retour !

    L'article officiel est par ici : https://techcommunity.microsoft.com/t5/SharePoint-Blog/Introducing-the-SharePoint-Migration-Tool-from-Microsoft/ba-p/109767

    • 23/9/2017

    [PowerShell - Domain Migration] SharePoint farm domain migration - User & Group migration

    Hi everyone,

    For one of my client, I had to migrate a SharePoint 2010 farm to a new domain. After reinstalling SharePoint from the beginning, I had to configure every service applications and migrate every content databases.

    This post is the first of a series dedicated to migrated SharePoint from one domain to another.

    The "problem" with the migrated database was that all user accounts and groups configured in SharePoint were from the old domain and not the new one. It was mandatory to migrate the old accounts to the new one (in the new domain). To do this task, I developped some PowerShell scripts. The script used to migrate users and group at the farm level is explained bellow. You can find this script here --> https://github.com/sschorgen/PowerShell/tree/master/SP10_Migrate-SPFromDomain

    This script was written and executed on SharePoint 2010.

    It is mandatory to create 2 CSV files :

    • 1 used to make the correspondence between the groups of the old domain and the new one
    • 1 used to make the correspondence between the usersof the old domain and the new one

    You can find an example of the group CSV file below :

    You can find an example of the user CSV file below :

    One part of the script is used to migrate groups :

    ForEach($Group in $Groups) {
    Write-Host " --- MIGRATING GROUP " $Group.oldDomain "-->" $Group.newDomain -ForegroundColor Yellow -NoNewLine
    $farm.MigrateGroup($Group.oldDomain, $Group.newDomain)
    Write-Host " OK !" -ForegroundColor Green
    }

    Another part of the script is used to migrate users :

    ForEach($User in $Users) {
    Write-Host " --- MIGRATING USER " $User.oldDomain "-->" $User.newDomain -ForegroundColor Yellow -NoNewLine
    $farm.MigrateUserAccount($User.oldDomain, $User.newDomain, $false)
    Write-Host " OK !" -ForegroundColor Green
    }

    Once you have created your 2 CSV files, you can execute this command :

    .\SP10_Migrate-SPUserAndGroupFromDomain.ps1 -UserMappingsCSV "D:\Scripts\users_to_migrate.csv" - GroupMappingsCSV "D:\Scripts\groups_to_migrate.csv"

    Happy migration ;)

    • 16/9/2017

    [PowerShell - Migration de domaine] Script de migration des groupes et utilisateurs de la ferme SharePoint

    Dans le cadre d'une migration SharePoint de domaine, nous avons réinstallé intégralement la ferme SharePoint 2010 d'un client dans un nouveau domaine. Suite à la réinstallation, il fallait reconfigurer l'intégralité des applications de service et restaurer les bases de données de contenu.

    Ce post est le premier d'une série dédiée à la migration SharePoint de domaine.

    Le "problème" avec les bases de données de contenu était les comptes utilisateurs et les groupes. En effet, suite à la restauration des bases de données de contenu, tous les comptes utilisateurs et les groupes étaient ceux de l'ancien domaine. Il était donc indispensable de migrer les utilisateurs et groupes afin de les faire "matcher" avec le nouveau domaine. Pour cela, plusieurs script ont été réalisés. Le script présenté ci-dessous permet de migrer tous les utilisateurs et groupes au niveau de la ferme SharePoint de destination, après avoir restauré les bases de données de contenu.

    Pour ce faire, j'ai réalisé un script PowerShell que vous pourrez trouver ici --> https://github.com/sschorgen/PowerShell/tree/master/SP10_Migrate-SPFromDomain

    Ce script a été conçu est exécuté sur SharePoint 2010.

    Il est indispensable de constituer 2 fichiers CSV :

    • 1 permettant d'effectuer la correspondance entre les groupes de l'ancien domaine et du nouveau
    • 1 permettant d'effectuer la correspondance entre les utilisateurs de l'ancien domaine et du nouveau

    Un exemple de fichier CSV contenant les correspondances groupes:

    Un exemple de fichier CSV contenant les correspondances utilisateurs :

    Le script est constitué d'une partie effectuant la migration des groupes :

    ForEach($Group in $Groups) {
    Write-Host " --- MIGRATING GROUP " $Group.oldDomain "-->" $Group.newDomain -ForegroundColor Yellow -NoNewLine
    $farm.MigrateGroup($Group.oldDomain, $Group.newDomain)
    Write-Host " OK !" -ForegroundColor Green
    }

    Et d'une autre partie responsable de la migration des utilisateurs :

    ForEach($User in $Users) {
    Write-Host " --- MIGRATING USER " $User.oldDomain "-->" $User.newDomain -ForegroundColor Yellow -NoNewLine
    $farm.MigrateUserAccount($User.oldDomain, $User.newDomain, $false)
    Write-Host " OK !" -ForegroundColor Green
    }

    Une fois les 2 fichiers CSV constitués, il ne vous reste plus qu'à exécuter la commande suivante :

    .\SP10_Migrate-SPUserAndGroupFromDomain.ps1 -UserMappingsCSV "D:\Scripts\users_to_migrate.csv" - GroupMappingsCSV "D:\Scripts\groups_to_migrate.csv"
    Bonne(s) migration(s) ;)
    Pour rappel : Ce post fait parti d'une série de plusieurs posts dédiés à la migration SharePoint de domaine
    • 12/9/2017

    [PowerShell] Deploy Work Folder Feature on Windows Server

    Hello everyone,

    Today I'll show you how to deploy the Windows Server Feature called "Work Folder" using PowerShell :

    1. Launch PowerShell as an administrator
    2. Run the following cmdlet : Install-WindowsFeature FS-SyncShareService

    • 31/8/2017

    [PowerShell] Déployer la fonctionnalité serveur dossiers de travail en utilisant PowerShell

    Hello tout le monde,

    Aujourd'hui une petite commande PowerShell permettant de déployer la fonctionnalité Windows Server "Dossier de travail" en PowerShell :

    1. Lancer une console PowerShell en tant qu'administrateur
    2. Exécuter la commande suivante : Install-WindowsFeature FS-SyncShareService