calendar icon indicating copy to clipboard operation
calendar copied to clipboard

Cache webcal calendars in browser's local storage

Open georgehrke opened this issue 9 years ago • 12 comments

in addition to: https://github.com/owncloud/calendar/issues/132

cache (not password protected) webcal subscriptions using HTML5 Browser Storage.

needs discussion about security:

  • users with the same browser profile might be able to read the locale storage. Potentially dangerous when webcal subscription contains private data. (e.g. Facebook provides a webcal (url contains hash) with the events you attend or you saved)
    • can we add something like "on logout" scripts to clear locale storage when a user logs out?
    • Is there some easy way to encrypt the data?

georgehrke avatar Mar 23 '16 22:03 georgehrke

cc @LukasReschke

georgehrke avatar Mar 23 '16 22:03 georgehrke

this way any webcal is only available in the web app - I'd expect them in any connected caldav client as well. can subscription help us with this respect?

DeepDiver1975 avatar Mar 24 '16 13:03 DeepDiver1975

As far as I understood CalDAV subscriptions its only meant to store the actual link and not the objects itself. Is this wrong?

georgehrke avatar Mar 24 '16 17:03 georgehrke

As far as I understood CalDAV subscriptions its only meant to store the actual link and not the objects itself. Is this wrong?

I was hoping you already know more about this :sob: :wink:

DeepDiver1975 avatar Mar 24 '16 21:03 DeepDiver1975

it's already pretty hard to find some documentation about it. Can you link me to the standard?

georgehrke avatar Mar 24 '16 23:03 georgehrke

According to this sabre file it's only a list.

Searching the web for CalDAV managed subscriptions or "{http://apple.com/ns/ical/}refresh rate" didn't turn up anything useful :confused:

I begin to question this standard's existence :sob:

georgehrke avatar Mar 25 '16 23:03 georgehrke

https://github.com/fruux/sabre-dav/blob/master/tests/Sabre/CalDAV/Subscriptions/CreateSubscriptionTest.php#L19L39

Although this still doesn't explain whether or not the server is supposed to cache the objects or if it's really just a list of subscriptions

georgehrke avatar Mar 25 '16 23:03 georgehrke

Maybe @evert can enlighten us :laughing:

georgehrke avatar Apr 01 '16 17:04 georgehrke

It's just a list of subscriptions. Although a server-side cache might be cool =)

I don't think a spec exists. I believe I just reverse-engineered it.

evert avatar Apr 01 '16 17:04 evert

I don't think a spec exists.

Haha, that explains a lot :see_no_evil:

Thx a lot :)

georgehrke avatar Apr 01 '16 17:04 georgehrke

@DeepDiver1975 For now I'll implement webcal in the client only as planned for 1.1.

If anything caching webcal and propagating them to clients as ordinary calendars would go into ownCloud 9.1.

georgehrke avatar Apr 01 '16 18:04 georgehrke

What would be used as encryption key if we were to encrypt the local storage saved calendars ?

tcitworld avatar Aug 17 '16 10:08 tcitworld