mercoledì 20 luglio 2022

MS Exchange: Visualizzare informazioni sulle Public Folders con Get-PublicFolder

Per recuperare gli attributi di una cartella pubblica o di un insieme di cartelle pubbliche è possibile utilizzare il cmdlet Get-PublicFolder, disponibile sia in Exchange on-premises che Exchange on-cloud (alcuni parametri e impostazioni possono essere esclusivi di un ambiente o dell'altro).

Sintassi

Get-PublicFolder
   [[-Identity] <PublicFolderIdParameter>]
   [-GetChildren]
   [-DomainController <Fqdn>]
   [-Mailbox <MailboxIdParameter>]
   [-Organization <OrganizationIdParameter>]
   [-ResidentFolders]
   [-ResultSize <Unlimited>]
   [-Server <ServerIdParameter>]
   [<CommonParameters>]

Get-PublicFolder
   [[-Identity] <PublicFolderIdParameter>]
   [-Recurse]
   [-DomainController <Fqdn>]
   [-Mailbox <MailboxIdParameter>]
   [-Organization <OrganizationIdParameter>]
   [-ResidentFolders]
   [-ResultSize <Unlimited>]
   [-Server <ServerIdParameter>]
   [<CommonParameters>]

Get-PublicFolder
   [-LostAndFound]
   [-DomainController <Fqdn>]
   [-Mailbox <MailboxIdParameter>]
   [-Organization <OrganizationIdParameter>]
   [-ResidentFolders]
   [-ResultSize <Unlimited>]
   [<CommonParameters>]

Get-PublicFolder
   [[-Identity] <PublicFolderIdParameter>]
   [-DomainController <Fqdn>]
   [-Mailbox <MailboxIdParameter>]
   [-Organization <OrganizationIdParameter>]
   [-ResidentFolders]
   [-Server <ServerIdParameter>]
   [<CommonParameters>]   

Parametri

-DomainController
Questo parametro è disponibile solo in Exchange on-premises.
Il parametro DomainController specifica il controller di dominio utilizzato da questo cmdlet per leggere dati da o scrivere dati su Active Directory. Il controller di dominio viene identificato con il suo Fully Qualified Domain Name (FQDN). Ad esempio, dc01.contoso.com.

-GetChildren
L'opzione GetChildren specifica se restituire solo i figli della cartella specificata dal parametro Identity. Non è necessario specificare un valore con questo parametro e non è possibile utilizzarlo con i parametri Recurse o LostAndFound.

-Identity
Il parametro Identity specifica il nome e il percorso della cartella pubblica che si desidera visualizzare. Un valore valido utilizza la sintassi: \Livello1\Livello2\...\LivelloN\PublicFolder. Ad esempio, "\Clienti Italia" o "\Clienti\Clienti Italia".

-LostAndFound
Permette di specificare se restituire solo le cartelle orfane che si trovano in \NON_IPM_SUBTREE\LOST_AND_FOUND. Non è necessario passare un valore a questo parametro
La cartella LOST_AND_FOUND contiene le cartelle mancanti che vengono ricreate dal processo di riconciliazione della gerarchia delle cartelle pubbliche quando la cartella esiste in una mailbox cartelle pubbliche secondaria, ma non in quella primaria.

Non è possibile utilizzare questo parametro insieme a -Identity o -Recurse.

-Mailbox
Il parametro Mailbox specifica l'identità della mailbox cartella pubblica gerarchica. È possibile utilizzare qualsiasi valore che identifichi in modo univoco la mailbox. Ad esempio:
  • Name
  • Alias
  • Distinguished name (DN)
  • Canonical DN
  • Domain\Username
  • Email address
  • GUID
  • LegacyExchangeDN
  • SamAccountName
  • User ID or user principal name (UPN)

-Organization
Questo parametro è disponibile solo in Exchange on-premises ed è riservato all'uso interno di Microsoft.

-Recurse
L'opzione Recurse specifica se restituire la cartella pubblica specificata e tutti i suoi figli. Non è possibile utilizzare questo parametro insieme a -GetChildren o -LostAndFound.

-ResidentFolders
Specifica se restituire le cartelle pubbliche che risiedono in una determinata mailbox delle cartelle pubbliche di contenuto. Se non si utilizza questo parametro, il comando restituirà solo le cartelle pubbliche il cui contenuto risiede nella mailbox delle cartelle pubbliche della gerarchia primaria.

-ResultSize
Il parametro ResultSize specifica il numero massimo di risultati da restituire. Il massimo predefinito è 10.000. Per non avere limiti ai risultati restituiti, impostare questo parametro su Unlimited. Questo parametro può essere passato solo in combinazione con i parametri -Recurse o -GetChildren.

-Server
Questo parametro è disponibile solo in Exchange Server 2010.

Il parametro Server filtra i risultati in base al server Exchange specificato. È possibile utilizzare qualsiasi valore che identifichi univocamente il server. Ad esempio:
  • Name
  • FQDN
  • Distinguished name (DN)
  • Exchange Legacy DN


Esempi

Esempio 1
Get-PublicFolder
Questo esempio utilizza il comando Get-PublicFolder senza parametri per restituire l'oggetto cartella pubblica principale (IPM_SUBTREE).

Esempio 2
Get-PublicFolder -Identity \NON_IPM_SUBTREE -Recurse | Format-List Name
Questo esempio restituisce i nomi di tutte le cartelle di sistema (che non sono mostrate per impostazione predefinita), a partire dalla radice della cartella di sistema (\NON_IPM_SUBTREE).

Esempio 3
Get-PublicFolder -Identity "\Ufficio1\Documenti" -Recurse -ResultSize Unlimited
Questo esempio restituisce la cartella pubblica "Documenti" da "\Ufficio1\" e tutte le sotto cartelle, senza limiti di numero.

Esempio 4
Get-PublicFolder -Mailbox "Ufficio" -ResidentFolders
Questo esempio restituisce le cartelle pubbliche che risiedono nella casella di posta elettronica specificata

Esempio 5
Get-PublicFolder -Recurse -ResultSize Unlimited | Select Identity, Name |Export-CSV C:\Temp\ElencoPB.txt -encoding "Unicode" -notypeinformation
Restituisce l'elenco delle cartelle (nome e percorso) contenute nelle cartelle pubbliche e lo esporta all'interno del file specificato.




lunedì 18 luglio 2022

Windows: Aggiungere/rimuovere dispositivi Bluetooth in maniera rapida

Un modo rapido per accoppiare/disaccoppiare dispositivi Bluetooth al sistema e attraverso il seguente comando:
explorer.exe ms-settings-connectabledevices:devicediscovery  

Per velocizzare l'avvio del comando è possibile creare un collegamento sul desktop.

Dispositivi Bluetooth
FIG 1 - Dispositivi Bluetooth




domenica 17 luglio 2022

PowerShell: Visualizzare informazioni sui dispositivi Bluetooth

Per visualizzare i dispositivi/periferiche Bluetooth connessi al computer si può utilizzare il cmdlet PowerShell Get-PnpDevice come il seguente comando
Get-PnpDevice -Class Bluetooth
Get-PnpDevice
FIG 1 - Get-PnpDevice
Per visualizzare ulteriori informazioni sui dispositivi Bluetooth si può modificare il comando precedente come mostrato di seguito
Get-PnpDevice -Class Bluetooth |FL

Tramite l'utilizzo del parametro FriendlyName è possibile ricercare un dispositivo Bluetooth indicando il suo nome o parte di esso. Ad esempio, per ricercare un dispositivo Bluetooth il cui nome contiene la stringa Intel si utilizza il comando
 -Class Bluetooth -FriendlyName *Intel*
Get-PnpDevice, parametro FriendlyName
FIG 2 - Get-PnpDevice, parametro FriendlyName 

Utilizzando Select-Object è possibile visualizzare solo le proprietà di nostro interesse come il nome, il produttore e il servizio corrispondente:
Get-PnpDevice -Class Bluetooth  | Select-Object -Property Caption, Manufacturer, Service
Get-PnpDevice, Select-Object
FIG 3 - Get-PnpDevice, Select-Object






mercoledì 13 luglio 2022

PowerShell: Verificare se un account utente è disabilitato/abilitato in Active Directory

Per verificare se un account utente è abilitato o disabilitato in Active Directory è possibile utilizzare il seguente script PowerShell
 $User = Read-Host -Prompt "Inserisci il nome dell'account";    
 Get-ADUser -Filter {name -like $User -or samaccountname -like $User} | Select Name, SamAccountName, Enabled   
Verifica account
FIG 1 - Verifica account


Se si dispone di un file contenente l'elenco degli utenti da verificare è possibile utilizzare il seguente codice andando a sostituire la stringa C:\Temp\ElencoUtenti.txt con il percorso e il nome del file contenente l'elenco.
 $userList = "C:\Temp\ElencoUtenti.txt"  
 $users = Get-Content $userList  
 foreach ($user in $users){  
  Get-ADUser -Filter {name -like $user -or samaccountname -like $user} | Select Name, SamAccountName, Enabled   
 }  





martedì 12 luglio 2022

PowerShell: Visualizzare il Product Key di Windows 10

Un modo semplice per visualizzare il Product Key di Windows 10 consiste nell'utilizzare il seguente comando da PowerShell
(Get-CimInstance -ClassName SoftwareLicensingService).OA3xOriginalProductKey 

Se il comando non restituisce alcun risultato allora il Product Key non è memorizzato sulla macchina.




giovedì 30 giugno 2022

PowerShell: Creare un collegamento

Nella realizzazione di uno script PowerShell potremmo aver la necessità di creare un collegamento (shortcut) ad un'applicazione o ad un path. Per farlo bastano poche righe di codice. 
Nel codice mostrato di seguito viene creato un collegamento sul desktop che punta all'applicazione blocco note (notepad.exe) a cui viene passato, come argomento, il path e il nome di un file da visualizzare. L'icona del collegamento viene personalizzata utilizzando quella di blocco note.

 # Individua la cartella Desktop in cui creare il collegamento  
 $desktop = [Environment]::GetFolderPath('Desktop')  
 # Specifica il nome del collegamento "File Host.lnk" che verrà creato sul desktop  
 $path = Join-Path -Path $desktop -ChildPath 'File Host.lnk'  
 # Crea un oggetto WScript.Shell da utilizzare per la creazione del collegamento  
 $shell = New-Object -ComObject WScript.Shell  
 # Prepara il collegamento sul desktop indicando il percorso e nome  
 $shortcut = $shell.CreateShortcut($path)  
 # Specifica il Target, in questo caso l'applicazione da avviare  
 $shortcut.TargetPath = "C:\Windows\notepad.exe"  
 # Specifica gli argomenti. In questo caso viene indicato un file da aprire con notepad  
 $shortcut.Arguments = "C:\Windows\System32\drivers\etc\hosts"  
 # Assegna al collegamento l'icona di notepad.exe  
 $shortcut.IconLocation = 'notepad.exe,0'  
 # Salva il collegamento  
 $shortcut.Save()  

Proprietà collegamento
FIG 1 - Proprietà collegamento







mercoledì 29 giugno 2022

Windows 10: Scaricare l'ISO di Windows 10 da browser

In alcuni articoli precedenti (come Windows 10: Windows Installation Media Creation Tool e Windows 10: Scaricare e installare una delle versioni precedenti di Windows) è stato già mostrato come recuperare le ISO di Windows mediante l'utilizzo di appositi tool.

In questo articolo vedremo come scaricare le ISO ufficiali di Windows 10 direttamente dal sito Microsoft tramite browser.

Accedendo all'indirizzo https://www.microsoft.com/it-it/software-download/windows10 da un ambiente Windows non vengono visualizzati i link diretti per il download delle immagini del sistema operativo Microsoft. Per aggirare questa restrizione basta andare a modificare l'user agent del proprio browser come visto nell'articolo Google Chrome: Modificare l'User Agent. Impostando come user agent Safari – iPad iOS 13.2 e aggiornando la pagina sarà possibile selezionare il download della versione Windows 10 (multi-edition ISO)
Windows 10 (multi-edition ISO)
FIG 1 - Windows 10 (multi-edition ISO)


Cliccando su Conferma ci verrà chiesto di selezionare la lingua desiderata e successivamente ci verranno proposti i link per il download della versione a 32bit e a 64 bit del sistema operativo.
Selezione lingua del prodotto
FIG 2 - Selezione lingua del prodotto

Link della versione a 32 e 64 bit di Windows 10
FIG 3 - Link della versione a 32 e 64 bit di Windows 10