code: protected String setSnapshotUserPermissions(final String spaceId) {
          try {
              Retrier retrier = new Retrier();
              return retrier.execute(new Retriable() {
                  @Override
                  public String retry() throws Exception {
                      // The actual method being executed
                      Map<String, AclType> spaceACLs =
                          snapshotProvider.getSpaceACLs(spaceId);
                      spaceACLs.put(StorageProvider.PROPERTIES_SPACE_ACL +
                                    dcSnapshotUser, AclType.READ);
                      snapshotProvider.setSpaceACLs(spaceId, spaceACLs);
                      return spaceId;
                  }
              });
          } catch (Exception e) {
              throw new TaskException("Unable to create snapshot, failed" +
                                      "setting space permissions due to: " +
                                      e.getMessage(), e);
          }
      }
docs: /*
  Give the snapshot user the necessary permissions to pull content from
  the snapshot space.