Using CloudKit as a CDN for premium in-app content

I'm building an app that will provide access to certain CloudKit records but gated by In-App Purchases. My idea is to store these records in CloudKit's public database and I want to know if this is a good idea or not.

It seems straightforward enough to prevent the app itself from showing content the user hasn't paid for but the content itself isn't "truly" protected since it lives in CloudKit's public database.

Does this seem like a bad idea? If is it, how bad of an idea is it 😅 I'm looking into this approach for costs and the easy of syncing CloudKit records to a Core Data store.

the content itself isn't "truly" protected since it lives in CloudKit's public database.

Some things to consider generally, for downloadable premium content:

  • Do you need to worry about bandwidth costs? (Not for CloudKit)
  • Are you obliged to pay the provider of the content even for unauthorised downloads?
  • Is the type of content, or the main market for your app, something that is often pirated?

Great questions:

Do you need to worry about bandwidth costs?

Not particularly. It's an initial download + syncing for any updates for a set amount of time (say 4ish months). Few large assets.

Are you obliged to pay the provider of the content even for unauthorised downloads?

Nope, it's content I'll be making and updating myself

Is the type of content, or the main market for your app, something that is often pirated?

I don't believe so no, the information itself is generally all already publicly available. I'd just be doing extensive amounts of curation and data clean up to present the content in new/fun ways

Using CloudKit as a CDN for premium in-app content
 
 
Q