Microsoft Enters a Completive Microsoft 365 Backup Market
One of the big announcements at the Microsoft Inspire (partner) conference marked Microsoft’s debut into the Microsoft 365 backup market. At least. It’s an intention to participate in the market with a public preview of a Microsoft 365 Backup product for SharePoint Online, OneDrive for Business, and Exchange Online in the last quarter of 2023. At the same time, Microsoft plans to deliver a public preview of a Microsoft 365 Archive product to move “inactive or ageing” SharePoint Online data from “hot” (online) storage to cold storage. I can’t wait to “automate scaled mass archiving by running PowerShell scripts” to move SharePoint Online files to cold storage.
Seriously, both initiatives are welcome. Microsoft has some unique advantages (and some disadvantages) when it comes to moving data around from Microsoft 365 repositories, and it’s about time that Microsoft took some responsibility for protecting customer data with backups.
The Microsoft Advantage
Microsoft’s advantage over ISV backup partners is twofold. They have instant access to customer data stored in their datacenters and they control the APIs that allow access to the data.
ISV alternatives typically copy information from Exchange Online, SharePoint Online, and OneDrive for Business (and sometimes Teams messages) from their native repositories to their datacenter. Many issues come into play:
Shipping large quantities of data across the internet from Microsoft’s datacenter network to the ISV’s target datacenter. This process takes time and can be resource intensive, especially for restore operations.
Lack of suitable APIs to stream large quantities of data from Microsoft to the ISV datacenter. For instance, Exchange Web Services (EWS) is the foundation for many ISV backup solutions for Exchange Online. EWS was never designed for this purpose, but it works. Some ISVs use EWS to copy Teams compliance records and call it a Teams backup. Microsoft wants to move ISVs to use the Teams export API, but that comes with its own complications.
Microsoft 365 Backup doesn’t use another repository. Everything stays inside Microsoft 365, so restores (when necessary) happen extremely quickly, even at massive scale. The idea is that if a Microsoft 365 tenant is compromised by ransomware, it can very quickly switch back to the status that pertained at a point in time before the attack happened. It’s a compelling proposition, especially when integrated into the Microsoft 365 admin center (Figure 1). Of course, it would be even better if the tenant stopped the attack by taking steps such as implementing multi-factor authentication everywhere, but that’s another matter.
Figure 1: Microsoft 365 backup in the Microsoft 365 admin centre (source: Microsoft)
Microsoft hasn’t said what licenses or costs are likely to be incurred with Microsoft 365 backup. I imagine that they will charge on a consumption basis, meaning that tenants will pay using an Azure pay as you go subscription based on how much data they process.
The Microsoft Disadvantage
The big disadvantage for Microsoft 365 Backup is that all data remains in Microsoft datacenters. Keeping all your eggs in one (datacenter) basket is not deemed to be a good thing because the remote possibility exists that the datacenter might suffer a catastrophic failure that leads to data loss. I don’t consider this to be something likely to happen, but I understand why companies like to maintain a separate copy of their data at a different location, just in case.
The ISV Play
Microsoft was careful to launch with ISV support. It doesn’t make sense to go to war with ISVs that have been serving Microsoft 365 customers for years. Microsoft has several launch partners that are signed up to use the backup and archive APIs so that “partners can integrate our capabilities into their data management and protection apps. With Microsoft 365 Backup and Microsoft 365 Archive APIs, our partners can uniquely provide a single and seamless experience that protects your data estate, whether inside or outside of Microsoft 365, in combination with our speed and storage innovations.” In other words, ISVs can use the APIs (and pay Microsoft for the privilege) to take advantage of faster backup and restore for Microsoft 365 data. We’ll see how this transpires in terms of costs and how the ISVs adopt Microsoft 365 backup APIs in their solutions.
No Teams Backup and Restore
Microsoft has deliberately targeted the easiest workloads for backup. Emails and documents are relatively easy objects to backup and restore. Microsoft has unfettered access to the data and can tweak APIs to make backup and restore operations easier so their implementation is faster and smarter. However, Microsoft 365 archive does not take on the biggest challenge that exists for backup today, and that’s to deliver seamless backup and restore capabilities for Teams.
Teams borrows from multiple Microsoft 365 and Azure services. It integrates data drawn from multiple sources and applications. This, and the lack of APIs to perform comprehensive backup and restore for Teams, is what creates the challenge. Given that Teams now has over 300 million monthly active users, it’s a pity that Microsoft hasn’t cracked a nut that they are uniquely positioned to take on. Perhaps full Teams backup and restore will come in time.
Insight like this doesn’t come easily. You’ve got to know the technology and understand how to look behind the scenes. Benefit from the knowledge and experience of the Office 365 for IT Pros team by subscribing to the best eBook covering Office 365 and the wider Microsoft 365 ecosystem.
This is very interesting that MS are going to release this.
They’re quite late to the party and to be honest, a massive draw back is that it’s still on MS servers.
One of the many reasons for backup is actually so that the data is accessible and away from MS as they’re not exactly DDoS proof as we have seen in recent years the levels of attacks and downtime rise.
When we deploy acronify.com to clients we give them a choice of having data in Azure, Google Cloud or Acronis’ own storage.
That way control is away from MS.
Secondly, the purpose of backup is also to protect from malicous attacks.
If MS account is compromised then the first thing attackers will do is access the backups, download or even delete them preventing recovery.
This is definitely an “eggs in one basket” scenario.
{"id":null,"mode":"button","open_style":"in_modal","currency_code":"EUR","currency_symbol":"\u20ac","currency_type":"decimal","blank_flag_url":"https:\/\/office365itpros.com\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/flags\/blank.gif","flag_sprite_url":"https:\/\/office365itpros.com\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/flags\/flags.png","default_amount":100,"top_media_type":"featured_image","featured_image_url":"https:\/\/office365itpros.com\/wp-content\/uploads\/2022\/11\/cover-141x200.jpg","featured_embed":"","header_media":null,"file_download_attachment_data":null,"recurring_options_enabled":true,"recurring_options":{"never":{"selected":true,"after_output":"One time only"},"weekly":{"selected":false,"after_output":"Every week"},"monthly":{"selected":false,"after_output":"Every month"},"yearly":{"selected":false,"after_output":"Every year"}},"strings":{"current_user_email":"","current_user_name":"","link_text":"Virtual Tip Jar","complete_payment_button_error_text":"Check info and try again","payment_verb":"Pay","payment_request_label":"Office 365 for IT Pros","form_has_an_error":"Please check and fix the errors above","general_server_error":"Something isn't working right at the moment. Please try again.","form_title":"Office 365 for IT Pros","form_subtitle":null,"currency_search_text":"Country or Currency here","other_payment_option":"Other payment option","manage_payments_button_text":"Manage your payments","thank_you_message":"Thank you for supporting the work of Office 365 for IT Pros!","payment_confirmation_title":"Office 365 for IT Pros","receipt_title":"Your Receipt","print_receipt":"Print Receipt","email_receipt":"Email Receipt","email_receipt_sending":"Sending receipt...","email_receipt_success":"Email receipt successfully sent","email_receipt_failed":"Email receipt failed to send. Please try again.","receipt_payee":"Paid to","receipt_statement_descriptor":"This will show up on your statement as","receipt_date":"Date","receipt_transaction_id":"Transaction ID","receipt_transaction_amount":"Amount","refund_payer":"Refund from","login":"Log in to manage your payments","manage_payments":"Manage Payments","transactions_title":"Your Transactions","transaction_title":"Transaction Receipt","transaction_period":"Plan Period","arrangements_title":"Your Plans","arrangement_title":"Manage Plan","arrangement_details":"Plan Details","arrangement_id_title":"Plan ID","arrangement_payment_method_title":"Payment Method","arrangement_amount_title":"Plan Amount","arrangement_renewal_title":"Next renewal date","arrangement_action_cancel":"Cancel Plan","arrangement_action_cant_cancel":"Cancelling is currently not available.","arrangement_action_cancel_double":"Are you sure you'd like to cancel?","arrangement_cancelling":"Cancelling Plan...","arrangement_cancelled":"Plan Cancelled","arrangement_failed_to_cancel":"Failed to cancel plan","back_to_plans":"\u2190 Back to Plans","update_payment_method_verb":"Update","sca_auth_description":"Your have a pending renewal payment which requires authorization.","sca_auth_verb":"Authorize renewal payment","sca_authing_verb":"Authorizing payment","sca_authed_verb":"Payment successfully authorized!","sca_auth_failed":"Unable to authorize! Please try again.","login_button_text":"Log in","login_form_has_an_error":"Please check and fix the errors above","uppercase_search":"Search","lowercase_search":"search","uppercase_page":"Page","lowercase_page":"page","uppercase_items":"Items","lowercase_items":"items","uppercase_per":"Per","lowercase_per":"per","uppercase_of":"Of","lowercase_of":"of","back":"Back to plans","zip_code_placeholder":"Zip\/Postal Code","download_file_button_text":"Download File","input_field_instructions":{"tip_amount":{"placeholder_text":"How much would you like to tip?","initial":{"instruction_type":"normal","instruction_message":"How much would you like to tip? Choose any currency."},"empty":{"instruction_type":"error","instruction_message":"How much would you like to tip? Choose any currency."},"invalid_curency":{"instruction_type":"error","instruction_message":"Please choose a valid currency."}},"recurring":{"placeholder_text":"Recurring","initial":{"instruction_type":"normal","instruction_message":"How often would you like to give this?"},"success":{"instruction_type":"success","instruction_message":"How often would you like to give this?"},"empty":{"instruction_type":"error","instruction_message":"How often would you like to give this?"}},"name":{"placeholder_text":"Name on Credit Card","initial":{"instruction_type":"normal","instruction_message":"Enter the name on your card."},"success":{"instruction_type":"success","instruction_message":"Enter the name on your card."},"empty":{"instruction_type":"error","instruction_message":"Please enter the name on your card."}},"privacy_policy":{"terms_title":"Terms and conditions","terms_body":null,"terms_show_text":"View Terms","terms_hide_text":"Hide Terms","initial":{"instruction_type":"normal","instruction_message":"I agree to the terms."},"unchecked":{"instruction_type":"error","instruction_message":"Please agree to the terms."},"checked":{"instruction_type":"success","instruction_message":"I agree to the terms."}},"email":{"placeholder_text":"Your email address","initial":{"instruction_type":"normal","instruction_message":"Enter your email address"},"success":{"instruction_type":"success","instruction_message":"Enter your email address"},"blank":{"instruction_type":"error","instruction_message":"Enter your email address"},"not_an_email_address":{"instruction_type":"error","instruction_message":"Make sure you have entered a valid email address"}},"note_with_tip":{"placeholder_text":"Your note here...","initial":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"empty":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"not_empty_initial":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"saving":{"instruction_type":"normal","instruction_message":"Saving note..."},"success":{"instruction_type":"success","instruction_message":"Note successfully saved!"},"error":{"instruction_type":"error","instruction_message":"Unable to save note note at this time. Please try again."}},"email_for_login_code":{"placeholder_text":"Your email address","initial":{"instruction_type":"normal","instruction_message":"Enter your email to log in."},"success":{"instruction_type":"success","instruction_message":"Enter your email to log in."},"blank":{"instruction_type":"error","instruction_message":"Enter your email to log in."},"empty":{"instruction_type":"error","instruction_message":"Enter your email to log in."}},"login_code":{"initial":{"instruction_type":"normal","instruction_message":"Check your email and enter the login code."},"success":{"instruction_type":"success","instruction_message":"Check your email and enter the login code."},"blank":{"instruction_type":"error","instruction_message":"Check your email and enter the login code."},"empty":{"instruction_type":"error","instruction_message":"Check your email and enter the login code."}},"stripe_all_in_one":{"initial":{"instruction_type":"normal","instruction_message":"Enter your credit card details here."},"empty":{"instruction_type":"error","instruction_message":"Enter your credit card details here."},"success":{"instruction_type":"normal","instruction_message":"Enter your credit card details here."},"invalid_number":{"instruction_type":"error","instruction_message":"The card number is not a valid credit card number."},"invalid_expiry_month":{"instruction_type":"error","instruction_message":"The card's expiration month is invalid."},"invalid_expiry_year":{"instruction_type":"error","instruction_message":"The card's expiration year is invalid."},"invalid_cvc":{"instruction_type":"error","instruction_message":"The card's security code is invalid."},"incorrect_number":{"instruction_type":"error","instruction_message":"The card number is incorrect."},"incomplete_number":{"instruction_type":"error","instruction_message":"The card number is incomplete."},"incomplete_cvc":{"instruction_type":"error","instruction_message":"The card's security code is incomplete."},"incomplete_expiry":{"instruction_type":"error","instruction_message":"The card's expiration date is incomplete."},"incomplete_zip":{"instruction_type":"error","instruction_message":"The card's zip code is incomplete."},"expired_card":{"instruction_type":"error","instruction_message":"The card has expired."},"incorrect_cvc":{"instruction_type":"error","instruction_message":"The card's security code is incorrect."},"incorrect_zip":{"instruction_type":"error","instruction_message":"The card's zip code failed validation."},"invalid_expiry_year_past":{"instruction_type":"error","instruction_message":"The card's expiration year is in the past"},"card_declined":{"instruction_type":"error","instruction_message":"The card was declined."},"missing":{"instruction_type":"error","instruction_message":"There is no card on a customer that is being charged."},"processing_error":{"instruction_type":"error","instruction_message":"An error occurred while processing the card."},"invalid_request_error":{"instruction_type":"error","instruction_message":"Unable to process this payment, please try again or use alternative method."},"invalid_sofort_country":{"instruction_type":"error","instruction_message":"The billing country is not accepted by SOFORT. Please try another country."}}}},"fetched_oembed_html":false}
This is very interesting that MS are going to release this.
They’re quite late to the party and to be honest, a massive draw back is that it’s still on MS servers.
One of the many reasons for backup is actually so that the data is accessible and away from MS as they’re not exactly DDoS proof as we have seen in recent years the levels of attacks and downtime rise.
When we deploy acronify.com to clients we give them a choice of having data in Azure, Google Cloud or Acronis’ own storage.
That way control is away from MS.
Secondly, the purpose of backup is also to protect from malicous attacks.
If MS account is compromised then the first thing attackers will do is access the backups, download or even delete them preventing recovery.
This is definitely an “eggs in one basket” scenario.
Kindest Regards
Ibrahim
Broadband9 LTD