Today I wanted to have a look if I could find all my external users in Office 365. And I’m especially interested in the active users.

First I had to connect to the Microsoft Online Service

Connect-MSolService

 

Then I’m collecting all users

$users = Get-MsolUser

 

foreach ($user in $users){
Write-Host $user.UserPrincipalName $user.UserType
}

Ok, So No I’m getting either Guest or Member.

guests

The Guests are all my external users.

The complete script:

Connect-MSolService

$users = Get-MsolUser

foreach ($user in $users){
if ($user.UserType -eq “Guest”)
{
Write-Host $user.UserPrincipalName
}
}

 

Ok now the second part. How do I find my active users.

 

The closest I can get is: $user.LastPasswordChangeTimestamp

Ok, so now I know when someone’s password was last changed.

Now you just need to make sure that I force users to change their passwords on a regular basis. So that when their passwords haven’t changed the above will roughly give me the active users.

Avatar for Pieter Veenstra

By Pieter Veenstra

Business Applications Microsoft MVP working as a Principal Architect at HybrIT Services Ltd. You can contact me using contact@sharepains.com

One thought on “Office 365 – How to find all your active/external users?”

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Discover more from SharePains by Microsoft MVP Pieter Veenstra

Subscribe now to keep reading and get access to the full archive.

Continue Reading

%d bloggers like this: