Streaming data to cesium

I’m all fresh to Cesium, so sorry for asking possibly obvious questions. However the library seem to be vast and I’m struggling a bit to figure out some of the mechanisms:
I’m looking into evaluating using cesium to display 3D data. Some of the data is hosted on our webserver and other in a S3 compatible cloud. From our web portal, the user can log in with his credentials and get access to data that he has the rights to use according. Then he can select from those the data files that he wants to display in the web map (which will be cesiumjs in this case). For the S3 compatible cloud hosted data it appears that we can use the Cesium SDK to stream the data from our own S3 provider to ion and from there to the cesiumjs web map viewer, no? However, how can we go about to do the same for the data that is mapped to the server, but not in the statics folder of the web project? Also, what is the limit of amount of data we can have at anytime on ion? Is there a way to automate ‘self destruction’ of the files that have been uploaded to ion after a specified time span?

PS: I see from some discussions that people that has tried to use pre-signed url’s from S3 has been convinced to use ion instead. Is it not at all possible to get cesium to display files using presigned urls from a cloud storage?