code: def _ensure_object_manipulation_allowed(self):
          # type: (StorageAccount) -> bool
          
          if self.is_sas:
              # search for account sas "o" resource
              sasparts = self.key.split('&')
              for part in sasparts:
                  tmp = part.split('=')
                  if tmp[0] == 'srt':
                      return 'o' in tmp[1]
              # this is a sas without the srt parameter, so this must be
              # a service-level sas which always allows object manipulation
              return True
          else:
              # storage account key always allows object manipulation
              return True
docs: Check if object manipulation is allowed
          :param StorageAccount self: this
          :rtype: bool
          :return: if object manipulation is allowed