Currently an SPO tenant object has several properties that can be set to block/allow external users AKA guests, to perform certain actions. I recently files a support ticket, which the response said that the features don't work "by design". I'd like these features/properties to actually do what they are supposed to. I am trying to allow external sharing of files for viewing purposes only, and prevent downloads.
BlockDownloadOfAllFilesOnUnmanagedDevices - https://msdn.microsoft.com/en-us/library/office/microsoft.online.sharepoint.tenantadministration.tenantpropertynames.blockdownloadofallfilesonunmanageddevices.aspx
BlockDownloadOfViewableFilesForGuests - https://msdn.microsoft.com/en-us/library/office/microsoft.online.sharepoint.tenantadministration.tenantpropertynames.blockdownloadofviewablefilesforguests.aspx
BlockDownloadOfViewableFilesOnUnmanagedDevices - https://msdn.microsoft.com/en-us/library/office/microsoft.online.sharepoint.tenantadministration.tenantpropertynames.blockdownloadofviewablefilesonunmanageddevices.aspx
Sanjoyan Mustafi commented
The block feature for "unmanaged device" access is soon to be released at a Tenant scope. We can then add a group of guest users to you AAD CA policy and make sure this policy applies to them (assuming guest users are not on unmanaged devices). ETA MAY 2018. Please follow this documentation.