SharePoint Online–Playbook for SMB

image

To receive a FREE copy of my SharePoint Online – Playbook for Small Businesses you’ll need to sign up for, and attend, this months CIAOPS Need to Know webinar:

You can register for the regular monthly webinar here:

October Registrations

(If you are having issues with the above link copy and paste – https://bit.ly/n2k2510)

The details are:

CIAOPS Need to Know Webinar – October 2025
Friday 31st of October 2025
11.00am – 12.00am Sydney Time

more webinar details.

Techwerks 29 – 21 November 2025

bw-car-vehicle

CIAOPS Techwerks face to face returns to Melbourne CBD on Friday the 21st of November 2025. The venue for the event will be:

Cliftons Melbourne CBD
Level 1, 440 Collins St
MELBOURNE VIC 3000

The course is limited to 15 people and you can sign up and reserve your place now! You reserve a place by completing this form:

http://bit.ly/ciaopsroi

or by sending me an email (director@ciaops.com) expressing your interest.

The content of these all day face to face workshops is driven by the attendees. That means we cover exactly what people want to see and focus on doing hands on, real world scenarios. Attendees can vote on topics they’d like to see covered prior to the day and we continue to target exactly what the small group of attendees wants to see. Thus, this is an excellent way to get really deep into the technology and have all the questions you’ve been dying to know answered. Typically, the event produces a number of best practice take aways for each attendee.

Recent testimonial – “I just wanted to say a big thank you to Robert for the Brisbane Techworks day. It is such a good format with each attendee asking what matters them and the whole interactive nature of the day. So much better than death by PowerPoint.” – Mike H.

The cost to attend is:

Gold Enterprise Patron = $50 ex GST

Gold Patron = $90 ex GST

Silver Patron = $180 ex GST

Bronze Patron = $360 ex GST

Non Patron = $720 ex GST

I hope to see you there.

CIA Brief 20251028

image

Introducing Teams Mode for Microsoft 365 Copilot –

https://techcommunity.microsoft.com/blog/microsoft365copilotblog/introducing-teams-mode-for-microso…

10 ways Microsoft Intune supports a smooth upgrade to Windows 11 –

https://techcommunity.microsoft.com/blog/microsoftintuneblog/10-ways-microsoft-intune-supports-a-sm…

How Windows 11 and AI are transforming the future of work –

https://techcommunity.microsoft.com/blog/windows-itpro-blog/how-windows-11-and-ai-are-transforming-…

Satya – My annual letter: Thinking in decades, executing in quarters –

https://www.linkedin.com/pulse/my-annual-letter-thinking-decades-executing-quarters-satya-nadella-7…

Security Copilot Agents: The New Era of AI, Driven Cyber Defense –

https://techcommunity.microsoft.com/blog/microsoft-security-blog/security-copilot-agents-the-new-er…

Securing GenAI Workloads in Azure: A Complete Guide to Monitoring and Threat Protection – AIO11Y –

https://techcommunity.microsoft.com/blog/microsoftdefendercloudblog/securing-genai-workloads-in-azu…

6 truths about migrating Microsoft Sentinel to the Defender portal –

https://techcommunity.microsoft.com/blog/microsoftsentinelblog/6-truths-about-migrating-microsoft-s…

After hours

Engineers vs Pumpkin Carving 2.0 – https://www.youtube.com/watch?v=3sbYbckT1VY

Editorial

If you found this valuable, the I’d appreciate a ‘like’ or perhaps a donation at https://ko-fi.com/ciaops. This helps me know that people enjoy what I have created and provides resources to allow me to create more content. If you have any feedback or suggestions around this, I’m all ears. You can also find me via email director@ciaops.com and on X (Twitter) at https://www.twitter.com/directorcia.

If you want to be part of a dedicated Microsoft Cloud community with information and interactions daily, then consider becoming a CIAOPS Patron – www.ciaopspatron.com.

Watch out for the next CIA Brief next week

CIA Brief 20251018

image

Microsoft named a Leader in the 2025 Gartner® Magic Quadrant™ for SIEM –

https://www.microsoft.com/en-us/security/blog/2025/10/16/microsoft-named-a-leader-in-the-2025-gartn…

Touch keyboard appears automatically in OneNote on Windows –

https://techcommunity.microsoft.com/blog/microsoft365insiderblog/touch-keyboard-appears-automatical…

Extortion and ransomware drive over half of cyberattacks –

https://blogs.microsoft.com/on-the-issues/2025/10/16/mddr-2025/

Microsoft 365 Insider Round-Up: October 2025 –

https://www.linkedin.com/pulse/microsoft-365-insider-round-up-october-2025-microsoft-365-insider-ub…

Making every Windows 11 PC an AI PC –

https://blogs.windows.com/windowsexperience/2025/10/16/making-every-windows-11-pc-an-ai-pc/

Microsoft raises the bar: A smarter way to measure AI for cybersecurity –

https://www.microsoft.com/en-us/security/blog/2025/10/14/microsoft-raises-the-bar-a-smarter-way-to-…

Building a lasting security culture at Microsoft –

https://www.microsoft.com/en-us/security/blog/2025/10/13/building-a-lasting-security-culture-at-mic…

Windows 10 support has ended on October 14, 2025 –

https://support.microsoft.com/en-us/windows/windows-10-support-has-ended-on-october-14-2025-2ca8b31…

Introducing MAI-Image-1, debuting in the top 10 on LMArena –

https://microsoft.ai/news/introducing-mai-image-1-debuting-in-the-top-10-on-lmarena/

The weakest link: Stolen staff passwords now the biggest cyber threat to workplaces –

https://www.smh.com.au/politics/federal/the-weakest-link-stolen-staff-passwords-now-the-biggest-cyb…

After hours

This is what happens when you reply to spam email – https://www.youtube.com/watch?v=_QdPW8JrYzQ

Editorial

If you found this valuable, the I’d appreciate a ‘like’ or perhaps a donation at https://ko-fi.com/ciaops. This helps me know that people enjoy what I have created and provides resources to allow me to create more content. If you have any feedback or suggestions around this, I’m all ears. You can also find me via email director@ciaops.com and on X (Twitter) at https://www.twitter.com/directorcia.

If you want to be part of a dedicated Microsoft Cloud community with information and interactions daily, then consider becoming a CIAOPS Patron – www.ciaopspatron.com.

Watch out for the next CIA Brief next week

Configuring Exchange Online Mailbox Logging – Best Practices and Step-by-Step Guide

Important: Mailbox Auditing is Already ON by Default

Good news! Since 2019, Microsoft automatically enables mailbox auditing for all Exchange Online organizations. This means logging is already active for your mailboxes without requiring any manual configuration.

Should You Enable All Available Logging?

No, you should NOT enable all available logging. Here’s why:

  • Microsoft’s Recommendation: Use the default audit configuration, which Microsoft automatically manages and updates
  • Storage Impact: Audit logs consume storage space in each mailbox’s Recoverable Items folder (counts against the 30GB default limit)
  • Performance Consideration: Excessive logging can impact mailbox performance
  • Automatic Updates: Microsoft automatically adds new important actions to the default audit configuration as they’re released

What’s Logged by Default

The default configuration logs these critical actions:

ActionAdminDelegateOwner
Create (Calendar items)
HardDelete
MoveToDeletedItems
SendAs
SendOnBehalf
SoftDelete
Update
UpdateFolderPermissions
UpdateInboxRules

Step-by-Step Configuration Guide

Method 1: PowerShell (Recommended)

Step 1: Connect to Exchange Online PowerShell

Install-Module -Name ExchangeOnlineManagement
Connect-ExchangeOnline -UserPrincipalName admin@yourdomain.com

Step 2: Verify Organization-Wide Auditing is Enabled

Get-OrganizationConfig | Format-List AuditDisabled

Result should show False (meaning auditing is enabled)

Step 3: Check Current Mailbox Audit Status

# For a specific mailbox
Get-Mailbox -Identity "user@domain.com" | Format-List Name,AuditEnabled,DefaultAuditSet

# For all mailboxes
Get-Mailbox -ResultSize Unlimited | Format-Table Name,AuditEnabled,DefaultAuditSet

Step 4: Use Default Settings (Recommended)

# Restore default auditing for a mailbox that was customized
Set-Mailbox -Identity "user@domain.com" -DefaultAuditSet Admin,Delegate,Owner

Step 5: Only If Necessary – Customize Specific Actions

# Example: Add MailboxLogin tracking for owner actions
Set-Mailbox -Identity "user@domain.com" -AuditOwner @{Add="MailboxLogin"}

# Example: Set specific admin actions (overwrites defaults - not recommended)
Set-Mailbox -Identity "user@domain.com" -AuditAdmin MessageBind,FolderBind,HardDelete

Step 6: Configure Retention Period

# Default is 90 days, can extend up to 365 days (E5 license required for >180 days)
Set-Mailbox -Identity "user@domain.com" -AuditLogAgeLimit 180

# Apply to all mailboxes
Get-Mailbox -ResultSize Unlimited | Set-Mailbox -AuditLogAgeLimit 180

Step 7: Verify Configuration

# Check what actions are being audited
Get-Mailbox -Identity "user@domain.com" | Select-Object -ExpandProperty AuditAdmin
Get-Mailbox -Identity "user@domain.com" | Select-Object -ExpandProperty AuditDelegate
Get-Mailbox -Identity "user@domain.com" | Select-Object -ExpandProperty AuditOwner

Method 2: Microsoft 365 Admin Center (Limited Options)

Note: The GUI provides limited mailbox audit configuration options. Most settings require PowerShell.

To Search Audit Logs via GUI:

  1. Navigate to Microsoft Purview compliance portal
  2. Go to Audit in the left navigation
  3. Ensure audit log search is turned on (banner will appear if it’s not)
  4. Use the search interface to query audit logs
  5. Filter by:
    • Activities (e.g., “Mailbox activities”)
    • Date range
    • Users
    • File, folder, or site
  6. Export results as needed

To Export Mailbox Audit Logs via Classic EAC:

  1. Navigate to the Classic Exchange Admin Center
  2. Go to Compliance ManagementAuditing
  3. Click “Export mailbox audit logs”
  4. Specify date range and recipients
  5. Submit the export request

Best Practices Summary

  1. Keep default auditing enabled – It’s already on and Microsoft manages it
  2. Don’t enable all actions – Avoid FolderBind and MessageBind for owners (creates excessive logs)
  3. Retention considerations:
    • Standard licenses: 180 days retention
    • E5 licenses: 1 year retention by default
    • 10-year retention available with additional licensing
  4. Monitor storage: Check Recoverable Items folder size periodically
  5. Use PowerShell for configuration: GUI options are limited
  6. Test before mass deployment: If customizing, test on pilot mailboxes first

When to Customize Auditing

Only customize mailbox auditing if you have specific compliance requirements such as:

  • Regulatory requirements for specific action tracking
  • Security investigation needs
  • Tracking mailbox login events (MailboxLogin)
  • Monitoring specific delegate activities

Understanding FolderBind and MessageBind Logging for Mailbox Owners

What FolderBind and MessageBind Actually Log

FolderBind

What it logs: Every time a mailbox folder is accessed or opened

  • Records when someone navigates to or opens any folder (Inbox, Sent Items, Deleted Items, custom folders, etc.)
  • Captures the folder GUID and path
  • Logs the timestamp, client IP address, and application used
  • For delegates, entries are consolidated (one record per folder per 24-hour period to reduce volume)
  • Important: Not consolidated for owners – every folder access creates a separate log entry

MessageBind

What it logs: Every time a message is viewed in the preview pane or opened

  • Records when someone reads or opens an individual email message
  • Captures the message subject and ItemID
  • Logs whether the message was previewed or fully opened
  • Records the client application and IP address
  • Note: For E5 licensed users, this is replaced by the more sophisticated MailItemsAccessed action

Why These Actions Are NOT Enabled for Owners by Default

1. Massive Log Volume

The Reality: A typical user might:

  • Access 20-50 folders per day during normal email activity
  • View 50-200+ messages daily
  • Generate thousands of audit entries weekly
  • Create up to 100,000+ audit entries annually per mailbox

2. Storage Impact

  • Audit logs are stored in the mailbox’s Recoverable Items folder (Audits subfolder)
  • Count against the 30GB default quota (or 100GB with holds)
  • Maximum 3 million items can be stored in the Audits subfolder
  • Heavy users could hit these limits within months

3. Performance Considerations

  • Every folder navigation and message view triggers a write operation
  • Can impact mailbox performance, especially for heavy email users
  • Increases server-side processing load
  • May slow down email client responsiveness

4. Signal-to-Noise Ratio

  • 99.9% of owner FolderBind/MessageBind events are legitimate daily activity
  • Makes it extremely difficult to identify suspicious activity
  • Investigation tools often filter out FolderBind by default because of the noise

Legitimate Scenarios for Enabling FolderBind/MessageBind for Owners

1. Insider Threat Detection

Use Case: Monitoring high-risk individuals or sensitive roles

  • Executives with access to M&A information
  • Employees on performance improvement plans or termination notice
  • Users with access to intellectual property or trade secrets
  • Detecting unusual access patterns (e.g., accessing old emails before resignation)

2. Compliance Requirements

Use Case: Specific regulatory mandates

  • Financial services requiring complete audit trails (SEC, FINRA)
  • Healthcare organizations tracking PHI access (HIPAA)
  • Government contractors with security clearance requirements
  • Legal hold scenarios requiring complete activity documentation

3. Forensic Investigations

Use Case: Post-incident analysis

  • Determining if a compromised account’s emails were actually read
  • Investigating data exfiltration attempts
  • Proving or disproving unauthorized access claims
  • Building timeline of activities during security incidents

4. Privileged Account Monitoring

Use Case: Enhanced monitoring for administrative accounts

  • Service accounts that shouldn’t have regular email activity
  • Shared mailboxes with sensitive information
  • Discovery mailboxes used for legal searches
  • Executive assistant mailboxes with delegated access

Best Practices If You Enable FolderBind/MessageBind for Owners

1. Selective Implementation

# Enable only for specific high-risk mailboxes
Set-Mailbox -Identity "CEO@company.com" -AuditOwner @{Add="FolderBind","MessageBind"}

# Create a list of VIP users
$VIPUsers = "CEO@company.com","CFO@company.com","Legal@company.com"
foreach ($user in $VIPUsers) {
    Set-Mailbox -Identity $user -AuditOwner @{Add="FolderBind","MessageBind"}
}

2. Increase Retention Period

# Extend audit log retention to accommodate increased volume
Set-Mailbox -Identity "CEO@company.com" -AuditLogAgeLimit 365

3. Monitor Storage Impact

# Check audit folder size regularly
Get-MailboxFolderStatistics -Identity "CEO@company.com" -FolderScope RecoverableItems | 
    Where-Object {$_.Name -eq 'Audits'} | 
    Format-List FolderPath,FolderSize,ItemsInFolder

4. Implement Automated Analysis

  • Export logs to SIEM systems for pattern analysis
  • Set up alerts for unusual access patterns
  • Use machine learning to baseline normal behavior
  • Focus on deviations from typical patterns

5. Consider Alternative Solutions

  • For E5 Users: Use MailItemsAccessed instead (more intelligent, less noisy)
  • Microsoft Defender: Use insider risk management policies
  • Third-party tools: Consider specialized insider threat detection solutions
  • DLP policies: Focus on preventing data loss rather than tracking all access

The MailItemsAccessed Alternative (E5 Licenses)

For organizations with E5 licenses, MailItemsAccessed is a superior alternative that:

  • Intelligently aggregates similar activities (reduces noise by 80-90%)
  • Provides both sync and bind operation tracking
  • Includes deduplication (removes duplicate entries within 1-hour windows)
  • Records InternetMessageId for precise message tracking
  • Better suited for forensic investigations
  • Automatically enabled for E5 users

Summary Recommendation

Enable FolderBind/MessageBind for owners ONLY when:

  1. You have specific compliance or security requirements
  2. Monitoring high-risk individuals or during investigations
  3. You have the resources to analyze the massive data volume
  4. Storage and performance impacts have been evaluated
  5. You’ve implemented automated analysis tools

Otherwise: Stick with the default configuration and use alternative methods like DLP policies, insider risk management, and the MailItemsAccessed action (for E5 users) for more effective security monitoring.


The name is already being used–Shared Mailbox troubleshooting script

Screenshot 2025-10-14 165536

I recently had to move a mailbox alias from an existing mailbox to a hared mailbox. Every time I attempted to do so I received the following error:

The name is already being used. Please try another name

The error isn’t real helpful because it doesn’t tell you exactly what the other object causing the conflict could be. To make life easier and look across the array of places the conflict could be I created the following script:

https://github.com/directorcia/Office365/blob/master/find-name-conflict.ps1

with documentation at:

https://github.com/directorcia/Office365/wiki/Find-Name-Conflict-%E2%80%90-Shared-Mailbox-Diagnostic-Tool

In my case the issue was with a ‘Name’ value in Entra ID but the script will also give your recommendations on what PowerShell commands to run to overcome any issues it detects. I ran these and I was good to!

Hopefully, this script makes it easier to find any conflicts.

Implementing a Phased Rollout of Conditional Access Policies Requiring Device Compliance in Microsoft 365

Overview

Implementing Conditional Access policies requiring device compliance in Microsoft 365 requires careful planning and a phased approach to minimize disruption while maintaining security. This comprehensive guide provides step-by-step instructions specifically tailored for small businesses.

1. Prerequisites and Initial Setup

Required Licenses

  • Microsoft Entra ID P1 or P2 – Required for Conditional Access
  • Microsoft Intune – Required for device compliance management
  • Microsoft 365 Business Premium or higher for small businesses

Essential Preparations

  1. Configure Emergency Access Accounts
    • Create at least two emergency access (break-glass) accounts
    • Exclude these accounts from ALL Conditional Access policies
    • Store credentials securely and separately
  2. Create Device Compliance Policies First
    • Define minimum OS version requirements
    • Set encryption requirements
    • Configure password/PIN requirements
    • Establish jailbreak/root detection settings
  3. Enable User Registration for MFA
    • Allow users to register authentication methods before enforcing policies
    • Communicate registration requirements to all users

2. Phased Rollout Strategy

Phase 1: Foundation (Weeks 1-2)

Objective: Establish baseline security and prepare infrastructure

  1. Create policies in Report-Only Mode
  2. Block legacy authentication protocols
  3. Secure the MFA registration page
  4. Target privileged accounts first with phishing-resistant MFA

Phase 2: Pilot Testing (Weeks 2-4)

Objective: Test with limited user groups

Pilot Group Selection

  • Start with 5-10% of your organization
  • Include IT staff and willing early adopters
  • Avoid executives and VIPs initially
  • Ensure representation from different departments

Creating the Policy in Report-Only Mode

  1. Navigate to Microsoft Entra admin centerConditional AccessPolicies
  2. Create new policy with these settings:
    • Name: “Require Device Compliance – Pilot”
    • Users: Select pilot group
    • Cloud apps: Start with non-critical apps
    • Grant: Require device to be marked as compliant
    • Enable policy: Report-only

Phase 3: Gradual Expansion (Weeks 4-8)

Objective: Progressively include more users and applications

Automated Phased Rollout Approach

If using the Conditional Access Optimization Agent (requires Microsoft Security Copilot):

  1. The agent automatically creates a 5-phase rollout plan
  2. Groups are assigned based on risk and impact analysis
  3. Automatic progression between phases based on success metrics
  4. Built-in safeguards pause rollout if sign-in success rate drops below 90%

Manual Phased Rollout Approach

  1. Phase 3a: Add 25% more users (low-risk departments)
  2. Phase 3b: Add another 25% (medium-risk departments)
  3. Phase 3c: Add remaining standard users
  4. Phase 3d: Include executives and VIPs
  5. Phase 3e: Apply to all cloud applications

Phase 4: Full Deployment (Week 8+)

  1. Switch policy from Report-only to On
  2. Monitor for 2 weeks before removing report-only policies
  3. Clean up redundant or test policies

3. Monitoring Strategies

Real-Time Monitoring Tools

A. Sign-in Logs Analysis

  1. Navigate to Microsoft Entra admin centerMonitoring & healthSign-in logs
  2. Filter by:
    • Conditional Access status
    • Failure reasons
    • Affected users
  3. Review the Report-only tab for policy impact without enforcement

B. Conditional Access Insights Workbook

Requires Azure Monitor subscription:

  • Provides aggregate view of policy impacts
  • Identifies potential issues before enforcement
  • Shows user impact analysis

C. Device Compliance Dashboard

  1. Access via Intune admin centerReportsDevice compliance
  2. Monitor:
    • Compliance status by policy
    • Non-compliant device trends
    • Error patterns in compliance evaluation

Key Metrics to Track

  • Sign-in success rate: Should remain above 90%
  • Device compliance rate: Target 95%+ before full enforcement
  • Help desk tickets: Monitor for unusual spikes
  • User productivity impact: Track application access patterns

4. Rollback Procedures

Immediate Rollback Options

Option 1: Disable the Policy

  1. Navigate to the Conditional Access policy
  2. Change Enable policy from “On” to “Off”
  3. Takes effect within minutes for new sign-ins

Option 2: Switch to Report-Only Mode

  1. Edit the policy
  2. Change Enable policy to “Report-only”
  3. Maintains visibility while removing enforcement

Option 3: Exclude Affected Users/Groups

  1. Edit policy → AssignmentsUsers
  2. Under Exclude, add affected users or groups
  3. Use sparingly and temporarily

Grace Period Configuration

Configure grace periods in Intune compliance policies:

  1. Navigate to Intune admin centerDevicesCompliance policies
  2. Edit policy → Actions for noncompliance
  3. Set grace period (recommended: 3-7 days for initial rollout)
  4. Users maintain access during grace period while fixing compliance issues

Recovery from Deleted Policies

  • Deleted policies can be recovered within 30 days
  • Access soft-deleted policies through Microsoft Entra admin center
  • Restore maintains original configuration and assignments

5. Best Practices and Recommendations

Communication Strategy

  1. Pre-deployment: 2 weeks advance notice with requirements
  2. During pilot: Weekly updates to pilot users
  3. Rollout phases: 48-hour notice before including new groups
  4. Post-deployment: Success confirmation and support resources

Testing Checklist

  • ✓ Test with multiple device platforms (Windows, iOS, Android)
  • ✓ Verify enrollment process for new devices
  • ✓ Confirm excluded accounts remain accessible
  • ✓ Test rollback procedures in development environment
  • ✓ Validate help desk escalation procedures

Common Pitfalls to Avoid

  1. Not excluding emergency accounts – Can result in complete lockout
  2. Skipping report-only mode – Misses opportunity to identify issues
  3. Moving too quickly between phases – Insufficient time to identify problems
  4. Inadequate user communication – Leads to confusion and resistance
  5. Not monitoring device check-in intervals – Compliance updates may be delayed

PowerShell Monitoring Example


# Connect to Microsoft Graph
Connect-MgGraph -Scopes "Policy.Read.All"

# Get all Conditional Access policies
$policies = Get-MgIdentityConditionalAccessPolicy

# Filter for device compliance policies
$compliancePolicies = $policies | Where-Object { 
    $_.GrantControls.BuiltInControls -contains "compliantDevice" 
}

# Display policy status
$compliancePolicies | Format-Table DisplayName, State, CreatedDateTime