Cloud storage with security - wordpress

Which service is suitable according to my need?
I want to upload my videos to cloud so that anyone can watch those videos on my wordpress website but it must have some security measures like:
Anyhow, No one can download those videos .
Anyhow, no one can fetch links.
Downloader can't able to grab those videos.
There will be encryption technique for security purpose.
Like Amazon services and many more which one I should choose so that I can calculate exact price for that plan.
In Amazon services, I am not exactly getting the final prices for video encryption services.

Related

How do you host user-uploaded mp3 files on FireBase without quickly running out of bandwith when users access page?

My website provides artists with an audio visualization of their uploaded mp3 files. Firebase Storage isn't necessarily the issue, but rather a bandwidth. Every time a fan accesses the website, the website downloads the mp3 from Firebase Storage in order to access the frequency data to visualize it. Given each mp3 is ~8MB, you could see how even having 200 fans accessing the website would go over the 1GB free quota, so having thousands of people viewing the website would become expensive and not scalable. I've considered hosting on SoundCloud, but I wouldn't be able to download the mp3 data in that case, only stream. What do people commonly do in this situation, where they need to have larger files like mp3s downloaded to display to the user without quickly running out of bandwidth?
Firebase Storage isn't necessarily the issue, but rather the bandwidth. Every time a fan accesses the website, the website downloads the mp3 from Firebase Storage in order to access the frequency data to visualize it.
So most likely, that's why you're having that problem related to the bandwidth because you're downloading all audio files, each time a user opens the website. That's not how you should handle this kind of situation. Instead of downloading all audio files, you should only display the name of the files, and only download them on demand. For example, you should store the name of the files and corresponding URLs from Cloud Storage, either in Cloud Firestore or in the Realtime Database, and as soon as the user clicks the download/play button, only then does start playing/downloading them.
Given each mp3 is ~8MB, you could see how even having 200 fans accessing the website would go over the 1GB free quota, so having thousands of people viewing the website would become expensive and not scalable.
The problem isn't about scalability, it's about costs. Cloud Storage for Firebase can easily scale to millions of files. Besides that, please also bear in mind that the free quota, it's used for testing puposes and not for real-world applications. For that scenario, you should consider upgrading to the Blaze Plan.

Google Firebase Cloud Storage high bandwidth cost

The problem I'm experiencing is high cost of bandwidth usage on a multi regional us bucket. Can anyone explain what this cost corresponds to? This Firebase Storage service is used for hosting asset files therefore the only operation that is required by the end user is downloading.
Additionally cost for Upload ops/Download ops/Bytes stored are practically non existent from what I see in Firebase Console.
Thanks
The main reason for a higher cost was that I had my assets stored in an additional bucket that I've created aside of the default one. As it turns out when you're utilizing additional buckets the different pricing schema is applied. Brief information in this regards can be found in Firebase pricing page under ? icon corresponding to Firebase Storage entry.
This is the estimated pricing for common usage. Firebase Storage free
limits are enforced daily and refreshed at midnight Pacific Time. In
the Blaze plan, fees for Firebase Storage are based on usage volume.
Firebase Storage usage fees are processed as Google Cloud App Engine
usage fees for the default bucket, and Google Cloud Storage usage fees
for any additional buckets. For more information, see pricing for
Google Cloud App Engine and Storage.
Additionally, prior to my current implementation of assets cloud fetching, I had it done via publicly accessible HTTP protocol (there are many Youtube clips which "teach" this approach). I'm not quite sure but that might've had an impact on a pricing schema as well (it's a little bit too convoluted reading Google's documentation in this regards and understanding all the terminology). On top of that this approach presented security threat as the urls were publicly accessible to anyone - in order to prevent it one should always think of some kind of authorization mechanism.

How do services like Jungle Scout and ASINspector provide Amazon review/rating data if Amazon doesn't provide that info through their API?

I'm trying to write a tool that looks up the average review score and number of ratings for a given Amazon product.
Unfortunately, Amazon seems to intentionally exclude those two things from their API, which has been the subject of many forum threads.
You can technically scrape a product page's HTML and get it, but Amazon will quickly notice that you're running a script and begin serving a CAPTCHA, furthering the idea that they don't want you to collect it.
But with all of that being the case, how do third-party services collect and serve that data? Are they violating Amazon's TOS and collecting it through shady means, or is there some kind of legitimate method that I'm not seeing?

Embedding a Firebase Storage Video to Wordpress but Hiding the URL

I need Hide the URL of an embedded video to prevent anyone from accessing the video outside of my domain.
What I want to use Firebase Storage for, is to store and stream the videos which ONLY paid users logged into my site can access.
Is there any way I can hide the URL so that people can only access the videos from within my web page in wordpress?
Thanks!
As Doug said in his comment, it is impossible to completely hide a download URL. There are complicated ways to obscure it, but I would recommend you avoid going down that rabbit hole - none are foolproof.
Instead, you should implement your security using Firebase Storage's built-in security rules - the situation you are describing is EXACTLY what this feature is designed to accomplish. You can put a rule in place that only users who have purchased the course (meaning, they have that video's identifier under their account in the database) are granted access... and you can even limit access to your project (see steps in answer #1) to specific domains.
There are a ton of great resources out there for you to reference while learning how the security rules work. First would be the docs I linked earlier, but they also have some pretty good official Firebase Youtube videos on the subject of rules.
If you are talking about having the videos stored in Firebase, hopefully you are planning to use the rest of Firebase's back-end features... because the ONE BIG ISSUE with this suggestion is that it relies on you using Firebase's built-in authentication. If your users are already logging into your site via an established non-Firebase system you've added to your Wordpress site, then I'm afraid this solution won't be so simple. Not impossible, but not as simple. If that's the case, you will need to pass the customer information to Firebase to login to a duplicated customer account, even if the end user doesn't realize they are being logged in to Firebase, and THEN they will have that special auth token that Firebase security uses to identify & grant access with the security rules.

Firebase storage local cache

We've prepared an app based on firebase storage and we plan to run it with few events. They're will be like 70 000 people. We assume there will be not many different files to download - for example a few video files, some more photos and sounds.
Assuming firebase storage could download 200-300MB each person we want to optimize the network traffic in specific location (one building).
Is there any possibility to create/run local storage cache not to skyrocket firebase storage bandwith, but only do this in local area (for people connected to some ours network)? Download it once to some local server and redirect all requests to it?
I'm looking for any kind of a solution.
What you're asking for doesn't exactly exist within Firebase Storage.
However, you could work around your limitations by using a link to your content (e.g. on YouTube) and embedding it.
Alternatively, you could download content from your own server (or one hosted using Firebase Hosting) after you've pulled a list of metadata (links, names etc) from Firebase Storage. Using a CDN / caching service like Cloudflare would also mean that the impact on your server (or Firebase Hosting) is actually relatively low, as are costs.

Resources