Sneaky tricky management scopes in Exchange Online.

If you’ve been creating scopes in Exchange Online in, for instance, following way…:

$Group = Get-DistributionGroup -Identity “RoomImpersonationGroup”
New-ManagementScope “Room Mailboxes Impersonation” -RecipientRestrictionFilter “MemberOfGroup -eq ‘$($Group.DistinguishedName)'”

…so using a DistinguishedName attribute – you might experience a moment when this solution stops to work.

itisatrap

Continue reading “Sneaky tricky management scopes in Exchange Online.”

Advertisements

Automated way to check Mellanox RDMA ping (nb_send_bw.exe) across nodes in a Hyper-V cluster.

So just recently we got need of checking RDMA ping between nodes, and as we got a few the task of running nb_send_bw.exe was getting a little fiddly. As we were waiting for repair storage jobs to finish between restarts I wrote a few lines to automating task.

GetReady

Continue reading “Automated way to check Mellanox RDMA ping (nb_send_bw.exe) across nodes in a Hyper-V cluster.”

Storage Space Direct – how to check storage jobs to not blow things up.

Just a small reminder for myself…

thisclose

Remember kids, storage jobs are only visible when running ISE or PowerShell console as an admin!

Safest is to always check the status of the jobs with invoke-command, as my dear colleague told me today, when using invoke you use the highest privileges:

Invoke-Command -ComputerName <CLUSTER_NODE_NAME> -ScriptBlock {Get-StorageJob}

 

Exchange – two ways to create new role assignments.

Forgotten this recently and got caught spending some time investigating.

Boys and girls, remember one thing – if you create role assignments like this:

New-ManagementRoleAssignment -Name "ASSIGNMENT NAME" -Role "ApplicationImpersonation" -CustomRecipientWriteScope "IMPERSONATION USERS" -SecurityGroup "IMPERSONATION ADMINS"

where “IMPERSONATION ADMINS” is your a security group created by you – this role assignment will NOT be visible in your “admin roles” area in Exchange Console:

adminrolesarea

Instead, you need firstly create a Role Group and assign role to it, for instance

New-RoleGroup -Name "ROLE GROUP IMPERSONATION ADMINS"

New-ManagementRoleAssignment -Name "ASSIGNMENT NAME" -Role "ApplicationImpersonation" -CustomRecipientWriteScope "IMPERSONATION USERS" -SecurityGroup "ROLE GROUP IMPERSONATION ADMINS"

Only assigning a role to a role group allows it to appear in the admin roles area.

Remember about that!

remember

 

How to properly reboot machine with PowerShell.

Just today my wonderful colleague showed me a great way to restart machine and at the same time – test if it has came up and is operational (basically if PowerShell responds remotely).

Restart-Computer -ComputerName <COMPUTERNAME> -Wait -Protocol wsman -force

Use -force to forcely logoff any active sessions (savage!!!!)

After performing restart in above way, console waits and will not go further, unless PS on the remote machine responds!

batmanping

 

Isn’t that cool!?

[Exchange Online] Remove cancelled Outlook meetings using PowerShell and EWS!

Essay_Start

Actually it is 23:13 CEST, but still!

Some time ago I have published a script to remove cancelled calendar meetings from Exchange OnPremise (I have tested that on Exchange 2010).You can find this script here:

https://paweljarosz.wordpress.com/2016/05/04/remove-cancelled-meetings-using-powershell-and-ews/

I am currently at the end of the migration to Exchange Online from Exchange 2010 environment. Few days ago I had a call telling me that seems that the cancelled meetings are not being removed from room calendars as they supposed to be.

Yup, I forgot to rewrite the script…

TimeToPanic

Continue reading “[Exchange Online] Remove cancelled Outlook meetings using PowerShell and EWS!”

Bartosz Bielawski will join our PPOSH #3 !in person! with a surprise session!

Hello Everyone,

As you might know, there is a third session of Polish PowerShell User Group this thursday (27.07.2017) at 17:00.

The breaking news is…Bartosz Bielawski – a PowerShell MVP  –  will join our meeting in person with a surprise session (we still ocnfirming the agenda).

If you do now know who Bartek is (shame on you!) here is some info:

BartekBielawski_200x300

Bartosz (Bartek) Bielawski is a busy Windows engineer for Optiver, an international company. He loves PowerShell and automation and that love earned him the honor of Microsoft MVP. He shares his knowledge mainly in PowerShell Magazine, in his blogs, and through articles published in the Polish “IT Professional” magazine. He is also a co-author of the “PowerShell Deep Dives” book, and author of “Windows PowerShell 5.0 Biblia”.

 

We (PPOSH guys) met Bartek on PSConf.EU one year ago, and we were talking about him joining our sessions this year. Bartek is now on holidays in Poland, and he cheerfully agreed to join us!

 

poweshell_biblia_200We are also working on getting some copies of his book “Windows PowerShell 5.0 Biblia” from Presscom publisher to be signed and handed out on our meeting! 🙂

 

 

 

 

If you still got a free evening on thursday, I think I just gave you an idea what you can do 🙂

So #DoSomethingForYourself join us on 27.07.2017, 17:00 at Objectivity!