December 9, 2015 at 11:35 am #32798
I work for a company in which we resell Office365 products. That being said, we have access to many domains that are our clients.
That being said, sometimes, we have to connect to the PS Module of O365 to get certain info about mailboxes, users etc...
Here's a little script we made:
Get Tenant ID
Get-MsolPartnerContract -DomainName domain.onmicrosoft.com
Connect to an MSOL tenant
$tenID=(get-msolpartnercontract -domain domain.onmicrosoft.com).tenantId.guid
Get Commands for a tenant (add -tenantID $tenID to the command after running the one above)
Get-MsolUser firstname.lastname@example.org -tenantID $tenID
Connect to Exchange Powershell for a client
$Creds = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/PowerShell-LiveID?DelegatedOrg=domain.onmicrosoft.com -Credential $Creds -Authentication Basic –AllowRedirection
My question is the following:
Is there a way to build a script, so that we create variables so that it asks us for the domain and the TenantID is a more user friendly way ?
The end goal would be to build a script that would have ask for the domain and tenant ID only and once we enter that, we easily get in the PowerShell session to get commands such as get-mailbox and so on...
Any help would be appreciated.
December 9, 2015 at 11:48 am #32801
Yes, you need to look into using parameters in your scripts. Check out help on "about_Functions_Advanced_Parameters"
Additionally, there is a really good book being talked about all over the place. It's called "Learn Windows PowerShell in a Month of Lunches". It would probably be a good read for you to get some good foundational skill in PowerShell.
December 9, 2015 at 12:18 pm #32803
Can you help me with the script itself. I look at the Functions_Advanced_Parameters but have not been able to find what I am looking for.
December 9, 2015 at 12:24 pm #32804
This guy here has an excellent article
You must be logged in to reply to this topic.