Category Archives: Office 365

Exchange Mailbox audit in office 365

Post July 2018 the mailbox audit will be enabled by default for all mailboxes in the cloud.

In a hybrid setup ,Once after the mailboxes are moved to the cloud the mailbox audit will be enabled after they are converted to mailboxes from mail enabled users.

Earlier we have to run the Set-Mailbox -AuditEnabled $True every time we add a new mailbox or a mailbox is migrated to the cloud so that mailbox Audit is turned on.

Once the mailbox audit logging is enabled for owner actions we might see lots of items getting occupied for user actions in audit folder. This Audit logs is stored individually on users mailboxes itself in Hidden audit folder.

Get-MailboxFolderStatistics -Identity | select name,itemsinfolder,foldersize

Continue reading

Quick Tips – Search mailbox operation in office 365

In office 365 the search can be used to search in-place items from email, documents, Skype for business and Microsoft Teams.In this article we will look into the steps to search emails from  mailboxes present in office 365.

The search and delete operation can be executed when an important confidential  message is sent by mistake to unintended recipients, a suspicious message have been circulated to few users or it can be even a phishing email. Admin can run into any of the above scenario and can be requested to perform this action.

In office 365 we can use the native search-mailbox , compliance search or the content search available in the office 365 security and compliance center.

The search-mailbox is exactly similar to what we have in on premise.We have to be a member of Mailbox Search and Mailbox Import Export role group to execute the search and delete operation.

We need to establish PSSession to office 365 with below:

$Cred = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri -Credential $Cred -Authentication Basic -AllowRedirection
Import-PSSession $Session



Then we need to execute the search operation based on the search parameter , search query and operators as per our requirement to search the required data.

Example of basic search which allowed to log data to a target mailbox

Search-Mailbox -identity -SearchQuery ‘subject:test’ -Logonly -LogLevel full  -TargetMailbox -TargetFolder SearchResults



The delete operation can be used to delete the content.

Search-Mailbox -Identity -SearchQuery ‘subject:test’ -DeleteContent


Compliance Search

We can use the compliance search operation to search and delete any emails from mailboxes present in office 365. We need to establish new pssession to compliance as below.

$Cred = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri -Credential $UserCredential -Authentication Basic -AllowRedirection


Once connected we can initiate new compliance search with New-Compliance search commandlet.

First New-Compliance search with required  parameter and content match query needs to be created.

New-ComplianceSearch -Description Marketing-Search -Name MarketingTeam -Exchangelocation -ContentMatchQuery “‘Teach English in China'”


Then we need to start the compliance search with Start-ComplianceSearch

Start-ComplianceSearch -Identity searchname

Post this operation we have 3 options with New-ComplianceSearchAction report only mode , export the searched data also delete the search results as below example.

Report Mode

New-ComplianceSearchAction -SearchName SearchName -Report


Export Mode

New-ComplianceSearchAction  -SearchName SearchName -Export


After we run the command with export once export is completed it will be available in the security and compliance center in the export section ready for download.


We can also use the delete option

New-ComplianceSearchAction -SearchName SearchName Puirge -PurgeType softdelete


Get-ComplianceSearch can be run to check the existing executed compliance searches.


Content Search

We can also use the content search option available in office 365 security and compliance center. Here we can specify the content locations from where it has to be searching the required content.

Here we have 3 options to search.

New Search – which is the default option and provides the search query parameters and conditions.


Guided Search –  Guided search  has the same options like new search except it has an addition guided wizard like below. Rest of the search query parameters and the conditions remains the same.


ID Search –  We can perform a targeted search based on providing a csv input file.


For ID search we need to provide a well formatted CSV input as mentioned in this Technet  format the document ID column and populate the selected column as mentioned in the article.

Once the CSV is prepared and imported it will be ready for  save and run as below.


After the save and run operation we get the results as below


We have options to choose the locations from where the data has to be fetched from modify location. This option is available only on New Search and Guided Search.

After specifying the location – add the search query keywords – date range – sender and other required parameters based on the search requirement.



once the search query is completed we can see the search results in the searches tab like below



We have an option to download the search results


We have options  to export the report  like below.


Imp Notes:

  1. The ID search is limited and supported only for mailbox items.
  2. We need to be member of Organization Management or at least Compliance Administrator role group in-order to consume this service from Security & Compliance Center.

Continue reading

Configure DKIM in office 365 Environment

In this article we will go through the steps to enable DKIM in pure  office 365 cloud environment.

For understanding DKIM concepts and  Enabling DKIM in on premise environment you can follow my previous blog 

The main difference between enabling DKIM in on premise environment and office 365 is:

  1.  In on premise we keep the private keys in our outgoing Anti spam gateway or DKIM agent which will be responsible for signing every outbound emails with DKIM stamp. Later we publish the public key in the DNS record.
  2.  But office 365 requests the customers to publish the CNAME and point them to a public key in DNS which will delegate the corresponding name space to office 365.

With this office 365 CNAME option we can rotate the keys whenever required. Because in this case the private key is owned by Microsoft and the public key is maintained in their office365 DNS records. We just need to create CNAME in our DNS console only for the first time. Later we need to create CNAMES only for the new domains we are adding in office 365.

First we need to enable DKIM from the Exchange admin center from the office 365 portal – navigate to protection – click on DKIM tab

We can enable for the routable domains registered with office 365. But when we enable them without publishing the DNS records for DKIM then we will get the below error.


We have to publish DKIM DNS records as below:

Create 2 CNAME records for 2 selector’s to sign the outgoing emails with DKIM.

In our case we need to create below records from the DNS hosting provider console.

Host name:
Points to address or value:
TTL: 3600

Host name:
Points to address or value:
TTL: 3600



Once we create these 2 CNAME records office 365  will take care of signing all the outgoing emails with DKIM with their signing agents.

Now if we go to office 365 portal and enable the DKIM it will get enabled. If we have a closer look we have an option to  rotate DKIM keys just in one radio button which is amazing option. Ideally its  not required to do this option from our side  since office 365 will do the rotation  of their keys once in a while as a part of their security checks.


To verify if the mail is signed by DKIM we can send one test email to gmail and if it says signed by your domain name then its DKIM enabled outbound email.


In the message headers we can see the DKIM status as passed.


Further if we look into the message headers we can see

Authenticated Received Chain (ARC)- New email security mechanism standard Which is currently used by office 365.
DomainKeys Identified Mail (DKIM)-  If the DKIM is enabled we see the DKIM value as pass.
Sender Policy FrameWork(SPF)-  SPF verification results.


Also in the DKIM signature we can see the selector and the domain name like below


Further we can look into the DKIM public keys by running the below command.

Get-DkimSigningConfig -Identity | fl


Additional General Info:

Below can be the possible results as a part of DKIM test in the message header.

  • DKIM=Pass – Message was Signed.
  • DKIM=Fail – The message was signed and the signature or signatures were acceptable, but they failed the verification test(s).
  • DKIM=None – The messages were not signed.
  • DKIM=Policy – The messages were signed but the signatures were not acceptable.
  • DKIM=neutral = The message was signed, but it was not formed correctly. This is possibly a configuration error on the sending domain side.
  • DKIM=temperror – This is a temproary error where unable to verify the public key for the DKIM verification.
  • DKIM=permerror = The message could not be verified due to some error that is unrecoverable.

Continue reading

Bulk Import local PST files to Office 365 mailboxes

In this article we will look at the steps to bulk import PST files to office 365 mailboxes.
There might be a scenario when a switch over from on premise to office 365 is done users might have maintained local PST files in network drive without an archive solution which is a bad practice.
When we run into these kind of scenarios its definitely not recommended to maintain this data in this approach.We might have bunch of pst files or probably more which might be 10 years worth of email that needs to be imported to the associated mailboxes.

There are 2 options to perform this action

Method 1: Use the free Azure service to upload the .PST files and map to the users mailbox.

Below prerequisites needs to be done:

1)So as a initial prerequisite move all the pst files to one central location which will be easier to perform the bulk import. If you have them in different sites then better to create one central location per site.

2)If we have more number of PST files and the data is more then create multiple jobs which will be better for tracking and not to choke the bandwidth and throttling.

3) The administrator will require a mailbox import\export rights to perform this operation.

Step 1:  Assign RBAC Mailbox import Export role to the required account. This can be done via power shell to connecting remote session to office 365 account or via Exchange admin console in office 365.






Once permission is granted navigate to data migration option setup  in the admin  page in office 365 admin URL – Here we need to select the option upload PST files.


Now Upload PST files go to New Import Job and type the Job name >> Next. Then check on Upload Your Data or hit on Next.


Now an import job window will appear. Here we need to click on Show network upload SAS URL and copy the URL by clicking Copy to clipboard. After that download Azure AzCopy for download the AzCopy tool and install the application.


Click on Azure AzCopy software and type the given command.

AzCopy.exe /Source:\\network path /Dest:”SAS URL” /V: give location  to save log file \AzCopy.log /Y


Note: We need to give the Sharing Permission for our file or folder where the PST file is present.

Navigate  to the import data window and check on the both preparing the mapping file’s option and click on Next.


Now in this import data we need to create the pst mapping and user in the excel file.


And upload the file by clicking the Select mapping file option




Once done we can see the pst files have been successfully imported to the associated office 365 mailboxes.

Method 2: Use a third-party solution for migrating PST to O365 Cloud Platform

Sometime we need  solution to import specific items from bunch PST file data into Office 365. So here we are going to discuss one more method which is a third-party tool for migrating PST to Exchange Online Mailbox.

I happened to have a look at this  MailsDaddy PST to Office 365 Migration Tool and it provides  security and easiness to Import all PST file data like emails, contacts, calendars, appointments, and attachments etc into o365 .

The tool carries advantages like:

Export the selected items only: It will show all the preview of PST file data and you can select the items and migrate them to O365 account. This is very much useful where in terms of an organization have restored a large mailbox from the old backup tapes for a legal issue. Here the exported huge PST from the backup can be taken and only the required important emails can be selected and imported to the user mailbox in online.

Date Range Filter: With the data filter option you can search the emails between the specific times and import only required data from PST file to Exchange online Mailbox. This option is also useful for cases where end user requires a restore of missing emails or a resigned employee from an old data from the backup and extract data only for last 1 year and importing them to the associated  office 365 mailbox.

Impersonation Option: Using this option, we will be able to migrate multiple mailboxes using sharing throttling and connection limits of each users. To use the impersonation export option, users must have application impression rights and full access to the admin account.

Bulk export Option: With this option, we can export multiple PST files into multiple mailboxes by mapping all mailboxes using a CSV file.

Below are the steps to use the Mails Daddy PST import tool :

Step 1: We can download this application and install it.

Step 2: Once it installed launch this software. After that click on Add file to upload the PST file.

Step 3: Once we click on upload the PST the software it will show all the preview of the PST file data.


Now we can select the mail, contacts, calendars, appointments, and attachments etc. if we need to export only selected items.
Click Export button to import all data from PST into Office 365.
Now select the provide export option and put the Office 365 Mailbox ID and password>> click Export.

Here we have 3 options export  all folders , export selected folders, export to primary mailbox and export to archive mailbox.


Once the export is clicked the  selected emails will be imported to  associated office 365 mailboxes successfully.

Exclaimer cloud signatures for office 365

As we all know exclaimer have been in the auto self signed signature market for a long period of time.

I have been working on the on premise version of this product for a quite period of time.

When we talk about the on premise solution based on my experience i would say its definitely a WOW factor. It is loaded with bundles of options by which you can customize the signature per department basis. Even you can give  granularity till each and every user .

If you are an HTML expert then you can play around with the signatures on your own  and make more customization. It gives you the flexibility to modify each and every signature from the source code which is amazing.

I thought to explore the cloud signature for office 365 .In this article we will have a detailed review of the installation and configuration of exclaimer for office 365 environment.


Office 365 subscription with Microsoft.

Admin account in the office 365

Ex-claimer  for office 365 subscription

After you are subscribed for office 365 for exclaimer you will get the below information


Specify the domain name


Then login with your office 365 admin account



Then you will be prompted to read the directory data


Once granted it establishes a connection with the Azure directory


On a successful sync you will get the below information


After establishing synchronization ,now we need to set up a connector inorder to route the emails to exclaimer cloud so that they can apply email signatures to outgoing email.

In-order to achieve this we need to establish connectivity between office 365 and exclaimer cloud.

Inorder to set this up first login with your username and password


Now we have an option to set up signatures for all users in your organization or only for specific users.

If you want to set signatures only for few users then create a group and add all those users in office 365. Since the azure directory is already synced when you type the group name it would be able to pick it up.


Now we need to perform the below actions:

Create Send connector – from your office 365 to Exclaimer cloud

For doing that login with admin privilege on your office 365 portal – Go to mail flow – click connector and create new connector


Make sure to  select only the first option else  your outbound emails will be affected.


Proceed to the next step and smart host it to the below  exclaimer smtp server 


In the similar way we need to create  a receive connector


Now we need to enter ,By verifying that the subject name on the certificate that the sending server uses to authenticate with
Office 365 matches this domain name (recommended)’. In the field below, enter then click ‘Next’:


Now we need to create a rule exactly as below with same values


As we can see the idea behind creating this rule is to forward only genuine emails to the exclaimer cloud and this is very mandatory. The rule is pretty simple and going through the rule will give a clear idea behind them.

On a successful configuration of the above things you can login successfully to your exclaimer for cloud

This is the place where we can create a new signature, Import a signature template designed by your development team or use the existing template which is very good.


Below are the available fields in the signature template provided . It has good default templates which is very good. It pulls all the information from the value eg: Telephone, organization, address on every users mailbox. So we need to make sure that the newly created mailboxes is populated with the values that are required in the template you have chosen.


Below is the sample of signature applied from the exclaimer cloud.



I’m always positive and will definitely recommend Exclaimer for any one based on my personal experience with the on premise version. If Microsoft releases any new version of Exchange i’m sure there will be a supported version of this product without any delay.

The Exclaimer cloud version is too  awesome and also it simplifies more by having the setup in the cloud and you just need to create the signature which is amazing. And the exclaimer support is always instantaneous without any delay based on my real time experience.


Sathish Veerapandian

MVP – Exchange Server


Quick Tip – Integrate Cortona with Office 365 for end users

Now office 365 customers have the option of integrating Office 365 and Cortona in Windows 10 for the end users.

By having this option enabled this will help users to be informed through cortona about their future meetings.
To use Cortana, people must be signed in to their windows 10 PC with their work account inorder to authorize Cortana to access Office 365 on their behalf.

Cortana can also access email and calendar data from users through various client apps running on Windows 10.

By default this is turned on in office 365 . To turn this off perform the following

Go to the Office 365 admin center.

Expand Service Settings, and select Cortana.

Click Cortana to toggle Cortana off.



Currently the support for Cortona with Outlook is planned for future release. So inorder to use with office 365 we need to setup the Windows 10 Outlook Universal Mail and Calendar apps with Office 365.

Cortona will work only on devices running on Windows 10 and available only few languages as of now.


Sathish Veerapandian

Exploring Power BI for Office 365

PowerBI is a new business intelligent offering feature from Microsoft which enables to work, collaborate and gain insights of their excel data  through office 365.
By having this option enabled all the users would be able to easily access their data inside and outside their organization and share the data in a secure way. Also amazing visualizations can be created for their excel data and can be accessed anywhere even from the mobile devices

To know more about this feature kindly read this blog –


Here i will explain few features about the power BI features

You can go here and create a power BI trial account for 60 days

Note: For Office 365 account holders to complete signup, sign in with your Office 365 user ID and password.

Once after you create a test account we get the below screen.

Power BI

You can create content pack

This content pack is nothing but we are creating a dedicated groups who can have access to these data. So basically we  can create multiple content packs and assign users to different content packs.

Power BI1

When we choose the first option my organization we can select only users in our organization who are members, groups in office 365.

Power BI2


When we choose the other option services for creating content pack we can choose any one of the below online services that you have and create content packs modify,share and collaborate excel data.

This option will be good and easy when we work with partners, vendors to share the data by this option.



So now after creating the content packs we need the data that can be shared among the groups we are member.

Here we have two below options to import our data from our local system or connect to the live datas.


Below are the options that we get when using the first option . Connecting to one drive and getting the data is also very good option.


When we select the second option to connect to online DB’s we have all the below options


Also we can create a separate group work-spaces as below and share the data separately.


Finally you can prepare a data sets as below share it within your work-spaces and access them from any where and from any devices which is amazing feature.



By using this feature you can stay connected with your reports and data wherever you are which is a great feature.Power BI pro will cost $9.99 per user per month and offers 10 GB of storage, Active-Directory-controlled collaboration and data privileges, live access to on-premises Microsoft SQL Server instances. Another amazing feature is mobility is supported for accessing these services.


Sathish Veerapandian

Enable Office 365 External Sharing

In this article we will have a look at enabling the office 365 external sharing option

Following services can be shared externally from your office 365 tenant.

1) SharePoint Sites.

2) Calendar free/busy sharing.

3) Lync – You can add people outiside your organizations , skype and  can communicate provided the following conditions are met.

Login to the office 365 portal with admin privilige

Click on Admin and click on external sharing


Now we have external sharing options for 3 of the services

When we click on SharePoint we get the below option as shown below


Also we have an option to share individual site by selecting them and then it gives us the same option.

When we click on the Calendar we have the below option



Once sharing is enabled, users can use Outlook Web App to share their calendars with anyone inside or outside the organization. People inside the organization can view the shared calendar side-by-side with their own. People outside the organization will be sent a URL that they can use to view the calendar. Users decide when to share, how much to share, and when to keep their calendars private

Note: If you want to share calendars with an organization that uses Exchange Server 2013 (an on-premises solution), the Exchange administrator will need to set up an authentication relationship with the cloud.

Below is the option that we have for enabling external sharing for lync


The organization you’re communicating with must also allow communication with your domain. If the other organization has Lync Server on premises, refer them to the TechNet article Configuring Federation Support for a Lync Online Customer.

When you’re communicating with someone in a federated domain, you can only use Lync features (for example, video conversations or desktop sharing) that are turned on in both organizations.

If the external access setting is changed from “On only for allowed domain” to “On except for blocked domain”, the domains that are listed won’t be kept.


Sathish Veerapandian

Steps to perform a extended message trace in Office 365

In this article we will look at the steps to perform a extended message trace in Office 365.

What is Message Trace ?

Message trace is same like  same message tracking in Exchange 2010 . By using this we would be able to track/trace an email which was already sent  through a mailbox which resides in the office 365 cloud.

In-order to perform a message trace perform the following action.

Login to office 365 Admin portal and click on Admin Icon




Scroll down all the way down to  Admin and click on Exchange




Navigate to mail flow and select message center as shown below




Now it will take you to message tracking center.Now Specify the start date and end date


Select the date range.

Note: The tracking results through EAC will be displayed only for the last 7 days.

If you want to see the message tracking results for more than 7 days then we can export them in csv file and see the results.



Also we have an option to trace the emails based upon the message delivery  status which i find this to be very useful.



The final result will be displayed as below





Also we have an option to see the pending and already completed traces that can be viewed.




By default the message tracking logs will be available only for the past 90 days. If at all your organization will like to extend this period then its better to open a case with Microsoft and extend the tracking period for the same.



Sathish Veerapandian

MVP – Exchange Server

Office 365 app launcher navigation experience

App launcher is the new feature introduced in office 365 by Microsoft.

This feature gives option to the end users to easily navigate and gives a quick launch option which has the most recent used applications by users which needs to be used for day to day operations can be easily accessible.

What is is APP Launcher ?

App launcher is a single one point click where we can see all the default office 365 applications (Outlook,Excel,PowerPoint,One Note,Word,One Drive etc.,) all together in the same location. In addition to this  we can add few other applications which end users would like to see on this app launcher one point click.

This gives a new navigation experience to the end user where all the applications are available on the top navigation bar.

Below is the icon which would be available once this App Launcher feature is available on office 365 tenants.



Once we click on that we get the below option as shown


We can see there are default office applications and we have an option My apps at the bottom which will navigate to a window where we can modify these applications as shown below.




We have an option to unpin any applications that we do not need in the list.

There are additional apps which can be added from the below office store URL

In addition to above feature there is a new customization feature that provides the option for users to pin up to three mostly used  applications to the right side of the top navigation bar.By doing this end users will get more direct access to the daily most frequently used applications.
Only customers with Exchange on-premise will have this ability to pin and un-pin this option at this time.

This feature will give end users a easy navigation and accessibility to their most frequent used applications on their daily operations.


Sathish Veerapandian

MVP – Exchange Server 

%d bloggers like this: