Le blog technique

Toutes les astuces #tech des collaborateurs de PI Services.

#openblogPI

Retrouvez les articles à la une

Active Directory – Comment afficher les attributs LDAP non-visibles dans l’utilitaire de délégation Active Directory ?

Cela fait 1 h que vous cherchez dans l’utilitaire de délégation de permission d’Active Directory votre attribut, mais impossible de le trouver ?

Dans un premier temps, il faut savoir que les noms affichés dans cet utilitaire sont sous le format « friendly name » qui n’est pas le nom technique dit « LDAP name ». Vous pouvez vous référer à l’article suivant qui fait la correspondance entre les 2 représentations pour les attributs les plus utilisés : tableau de correspondance attribut LDAP et friendly name

Si votre attribut n’est toujours pas visible, c’est parce que par défaut certains attributs sont volontairement cachés.

 

Afficher un attribut caché dans l’utilitaire de délégation Active Directory

 

Pour afficher un attribut caché dans l’utilitaire de délégation Active Directory, il faut se connecter à un contrôleur de domaine (DC) et ouvrir le fichier dssec.dat.

Par défaut, celui-ci se trouve sous C:\Windows\System32

Le fichier est divisé par type d’objet LDAP : utilisateur, ordinateur, etc.

Lorsqu’un attribut est égale à 7 l’attribut n’est pas visible dans l’utilitaire de délégation, il faut modifier la valeur à 0 pour le rendre visible.

 

Exemple sur l’attribut « st » dont le friendly name est « State/Province »

Avant :

 

Après :

 

Remarque : les modifications dans le fichier dssec.dat ne sont pas répliqués sur les autres DC, il faut donc réutiliser le même DC pour de futures modifications ou refaire les mêmes manipulations sur le nouveau DC. À noter que cela ne concerne que l’affichage dans l’utilitaire de délégation, toute modification de permission via l’utilitaire est répliquée sur l’ensemble des DC.

[Office 365] – Forcer la création de OneDrive

Par défaut lorsque vous créez un utilisateur sur Azure AD et que vous lui attribuez une licence Office (F3, E3, E5) le OneDrive n’est pas créé directement; en effet ce dernier n’est provisionné que lorsque l’utilisateur cliquera sur Onedrive lors de sa connexion.

Lorsque vous souhaitez réaliser une migration O365 ce sujet peut être une problématique, car si les Onedrive ne sont pas créés vous pourrez difficilement lancer une migration en amont.

Il est possible de contourner ce sujet en utilisant les commandes Powershell suivantes (avec les droits minimum de « SharePoint Online administrator ») :

# Conect To Sharepoint Online
Connect-SPOService -Credential $Credential -Url https://XXXXX-admin.sharepoint.com

Prenez soin de remplacer l’url de connexion par la votre.

Ensuite vous pouvez soit fournir une liste d’utilisateur, soit récupérer l’ensemble des utilisateurs possédant une licence (ici nous importons une liste) et, lancer les requêtes de création.

# Import Users
$users = Import-Csv C:\Temp\Users.csv 

# Start Request
foreach ($u in $users) {
    $upn = $u.userprincipalname
    $list += $upn

    if ($i -eq 199) {
        #We reached the limit
        Request-SPOPersonalSite -UserEmails $list -NoWait
        Start-Sleep -Milliseconds 655
        $list = @()
        $i = 0
    }
}

 

[Powershell] – Etat des lieux des licences O365

Besoin d’avoir un état des lieux de vos licences O365 (voir de l’automatiser) ?

Voici quelques lignes Powershell qui vous remontrons les informations.

Prérequis:

Vous aurez besoin de:

  • Powershell 5.1
  • Le module Azure AD

Code :

Connect-AzureAD
$Array = @()
$AllSKU = Get-AzureADSubscribedSku

$AllSKU | sort SkuPartNumber | foreach {
    $SkuPartNumber = $_.SkuPartNumber
    $Bought = $_.PrepaidUnits.enabled
    $Suspended = $_.PrepaidUnits.Suspended
    $Warning = $_.PrepaidUnits.Warning
    $Assigned = $_.ConsumedUnits
    $Rest = $Bought - $Assigned

    $Array += New-Object psobject -Property @{
        License = $SkuPartNumber
        Bought = $Bought
        Assigned = $Assigned
        Will_Expired = $Warning
        Suspended = $Suspended
        Rest = $Rest
        }
    $SkuPartNumber = $null
    $Bought = $null
    $Assigned = $null
    $Warning = $null
    $Suspended = $null
    $Rest = $null
        
    }

$Array | FT License,Bought,Assigned,Will_Expired,Suspended,Rest
$Array | Export-Csv C:\temp\Licenses.csv -Delimiter ";" -Encoding UTF8 -NoTypeInformation

 

Bien entendu, pour l’automatiser il faudra modifier l’authentification et passer par de la moderne authentification (via un SPN).