Sync vault in iOS through iCloud Drive

Karel
Karel
Community Member

Yes, I know this topic has been hammered to death here on the support forums, but a lot of information about it is outdated now.
Like many others, I'm phasing out DropBox and move to iCloud Drive exclusively. It's taken Apple a while, but I think their cloud service is now on par with DropBox. What I liked about the 1PW DropBox sync, is that you could just see the vault(s) sitting there in your DropBox. I'm not feeling comfortable with this "behind the curtains" sync through CloudKit (although I realize that Apple's own services do this too).

So as an alternative I can just point 1Password on all my Macs to the vault sitting on my iCloud drive, and I assume it will work identical to how things worked with DropBox. But on iOS, it seems that 1Password will not let me select the vault(s), so this option won't fly. Now my only option is to use the CloudKit sync option, which hasn't had (and will probably not get very) much love from AgileBits since the 1Password.com sync service has taken off.

So yes, I know the default answer will be: "why not use 1Password.com for syncing?". But you guys miss one really important issue with pushing your sync service (so desperately): I don't want my files spread around on multiple services. I want to cut down on cloud services, not have more. I know this is a trend, even Panic offers their "Panic Sync" for syncing data for Transmit's "Favorites". An FTP program wants me to use their supercool cloud service? Aaarrghh! Really, it's getting out of hand. I can imagine how this goes in staff meetings: "we need to do something with the cloud, it's the thing these days". And then we're off, another cloud-based service is born. And as users, we now have to cope with a multitude of different cloud services, seperate for each app (likely costing you money every month). Not okay. I want to control where I store my data, preferably in as few places as possible, on servers from providers that I trust and that have a good track record in keeping my data safe.

So my question is: is there a way to use vaults stored on iCloud Drive through iOS, and if not, then why? What's the technical hurdle that prevents you to do this?


1Password Version: Not Provided
Extension Version: Not Provided
OS Version: Not Provided
Sync Type: Not Provided

Comments

  • AGAlumB
    AGAlumB
    1Password Alumni

    So as an alternative I can just point 1Password on all my Macs to the vault sitting on my iCloud drive, and I assume it will work identical to how things worked with DropBox. But on iOS, it seems that 1Password will not let me select the vault(s), so this option won't fly.

    @Karel: Right. CloudKit is Apple's supported method for syncing app data via iCloud. iCloud drive
    is for files. We try to follow Apple's guidance on this stuff because, well, when you don't, you tend to get stuck between a rock and a hard place when they change things — like if we hadn't moved to 64-bit on iOS and macOS years ago, we'd be in trouble now.

    Now my only option is to use the CloudKit sync option, which hasn't had (and will probably not get very) much love from AgileBits since the 1Password.com sync service has taken off.

    That's kind of an odd thing to say. I'm not sure what sort of "love" you're referring to specifically, but we literally just updated 1Password for Mac to use Apple's latest CloudKit frameworks like a week ago (a good object lesson for why us running our own service for 1Password data is better). We also updated our apps for the new Dropbox APIs this past year. We're definitely focused on 1Password.com since that's the best option for most people, and it's something we've been asked for for years, but we're committed to supporting our existing apps across the board, including when it comes to sync. We're just probably not going to add new 3rd party sync options, but we have no plans to remove any. Many people still use them — including some of us.

    So yes, I know the default answer will be: "why not use 1Password.com for syncing?". But you guys miss one really important issue with pushing your sync service (so desperately): I don't want my files spread around on multiple services. I want to cut down on cloud services, not have more. I know this is a trend, even Panic offers their "Panic Sync" for syncing data for Transmit's "Favorites". An FTP program wants me to use their supercool cloud service? Aaarrghh! Really, it's getting out of hand. I can imagine how this goes in staff meetings: "we need to do something with the cloud, it's the thing these days". And then we're off, another cloud-based service is born. And as users, we now have to cope with a multitude of different cloud services, seperate for each app (likely costing you money every month). Not okay. I want to control where I store my data, preferably in as few places as possible, on servers from providers that I trust and that have a good track record in keeping my data safe.

    Yeah, I think this is a bit of a stretch. Certainly you should be able to choose where your data is stored, and you can — iCloud, Dropbox, 1Password.com, local folder, etc. But that's different than trying to dictate which APIs developers use to sync app data within the same service. It might be better to ask "Why are AgileBits, Panic, and others going to the trouble to build sync services in the first place?" There are good reasons. I can't speak for anyone else, but it's allowed us to make the 1Password.com incredibly fast and efficient for syncing 1Password data, since it doesn't have to deal with anything else. That's because we can structure the database and sync mechanisms to allow for the things we're trying to do, and update them as needed to improve the experience for our customers. If you have a problem syncing with iCloud, we can't fix that for you. And yet you're asking for us to build in support for another sync method within iCloud (which, again, isn't what iCloud Drive is designed for). It just doesn't make sense for us to do that at this time.

    So my question is: is there a way to use vaults stored on iCloud Drive through iOS, and if not, then why? What's the technical hurdle that prevents you to do this?

    See above. If Apple comes out at WWDC this year and says they're deprecating CloudKit, we'll move to iCloud Drive. But I doubt that will happen as there are real benefits (for both reliability and efficiency) to use key value and database sync (like Cloud Kit and 1Password.com) versus file-based sync (like iCloud Drive and Dropbox). Both have strengths and weaknesses, and we'll continue to use the best tool for the job based on what's available.

  • Karel
    Karel
    Community Member

    @Brenty, first of all: thanks for your quick and very comprehensive reply. I really appreciate it.

    CloudKit is Apple's supported method for syncing app data via iCloud. iCloud drive
    is for files.

    Thanks for explaining this. I think I underestimated how file-based and service-based sync methods differ from eachother.
    It's just that a number of applications now let me very easily sync settings (Preferences mostly) between Macs just by creating a special folder (usually in "Application Support") on DropBox or iCloud Drive, throw some files in it, point the app to it, and things just work. They'll probably work a bit less well when you try to strain this setup, but for application preferences, that's not a big deal. For more delicate data like 1Password vaults, I can imagine things can and should be made a bit more robust, and I guess that's where the dedicated sync API's come in. Nevertheless, to me, on my Macs it seemed as if 1PW was just doing file-based sync over DropBox because I saw the vault file just sitting there, and updating whenever I changed something. And it worked flawlessly for years, probably because I'm the sole user of these vaults. But from your reply I guess there's more to it.

    That's kind of an odd thing to say. I'm not sure what sort of "love" you're referring to specifically, but we literally just updated 1Password for Mac to use Apple's latest CloudKit frameworks like a week ago

    Again, that was an assumption I made without enough technical knowledge. But let me ask you this: is there a technical limitation to why iCloud sync doesn't support multiple vaults? That's namely the reason I (perhaps falsely, I admit) assumed that iCloud sync was low on your priority list. I'd have to dig into the CloudKit developer docs to see why this limitation is there, but this seems like something that would be possible to implement.

    I can't speak for anyone else, but it's allowed us to make the 1Password.com incredibly fast and efficient for syncing 1Password data, since it doesn't have to deal with anything else.

    I fully understand, but as I wrote: if every application I use wants me to use their sync service, then there will be no "cloud". There will soon be an unmanageable number of smaller clouds that I all have to keep track of. FYI, Panic's Transmit 5 does not support syncing over DropBox anymore, just their own "Panic Sync". My fear is that more developers are forcing me to use their proprietary sync service, despite the fact that they did offer generic sync options earlier.

    But that's different than trying to dictate which APIs developers use to sync app data within the same service.

    I'm sorry if I made it look as if I was trying to dictate anything. But if two different API's within the same service have different outcomes (support for only a single vault or for multiple vaults), then yes, I'd be inclined to assume (here I go again) that you would choose the one with the best end-user experience. And for me that would be "multiple vaults", but you may have totally different priorities (e.g. data integrity).

    But as your last paragraph teaches me, iCloud sync is not just iCloud Drive with invisible files, so I guess there are good reasons to not use iCloud Drive to sync vaults. Eventhough it seems to be working in a DIY setup with a single user, multiple Macs.

    My takeaways from your reply are: A. different sync methods (API's) on the same service can have different outcomes, B. you're staying committed to supporting 3rd party sync services besides 1Password.com, which I'm happy to hear. And yes, I definitely see an advantage for people to use 1Password.com sync, I'm just not one of them. Cloud services require trust, and with more services it's hard to keep track of which parties are trustworthy. And yes, all of them say that they're commited to keep your data safe, and despite that, we all know that things go horribly wrong on a regular basis...

  • Yep — you’ve found part of the difficulty. While the desktop OSes have “real” file systems and can just sync to an arbitrary file iOS does not. There is no API to “sync” data to iCloud Drive, which leaves iOS in the dark. It also doesn’t have any options for Android, and very limited options for Windows. As we’re now a multi-platform company we’ve agreed to not implement any further sync options that don’t support all of the platforms that we support. So one of the other parts is that it doesn’t make sense to invest a lot of time in building a solution that will only work for customers who are exclusively Apple. The long and short of it is that iCloud Drive is not a realistic sync solution for 1Password.

    As for comparing 1Password.com to iCloud or Dropbox, in general, I think we’re comparing Apples and oranges here (pun intended and appreciated by author). 1Password.com isn’t a generic cloud storage solution for dumping arbitrary files. It serves an entirely different purpose from the other two. Now that line is admittedly blurred a bit because it is possible to sync 1Password data through iCloud or Dropbox, but when doing so all those solutions are providing is data storage. 1Password.com is a custom tailored solution for 1Password.

    To answer your question about multiple vaults... I believe any technical limitation regarding iCloud is on our end at this point... see my point above regarding cross platform priorities above. If my memory is accurate there were initially some technical limitations in this regard on Apple’s end, which was why we didn’t implement multiple vaults there in the first place, but I believe that has been addressed.

    B. you're staying committed to supporting 3rd party sync services besides 1Password.com, which I'm happy to hear.

    Just to clarify: we’re not making any long term sweeping promises here, but I don’t see the landscape regarding sync options changing any time in the near future. Right now our focus in this regard is on 1Password.com and it is likely to remain there for the foreseeable future.

    Ben

  • philkim
    philkim
    Community Member
    edited December 2018

    @Ben, thanks for the detailed explanations.

    One of the main reasons why I love and prefer 1Password over many competitors is that it allows me to choose an alternate cloud service (Dropbox) to manage extremely sensitive data. But like @Karel, I am becoming more disenfranchised with Dropbox, whose macOS client does numerous questionable practices, and is one of few apps on my Mac that almost constantly consumes non-trivial CPU and RAM resources.

    After few cold starts, I have warmed up to iCloud and is paying subscriber to 2TB tier.

    Managing multiple vaults via Dropbox is a power user's feature. I don't think it's trivial to use Dropbox to manage permission and share vaults with other people. Only 1Password.com makes managing multiple vaults super simple.

    While I am sure 1Password.com takes a good care of sensitive data, many power users wants to store them on a cloud service of their choosing. I think it is imperative for Agilebits to support any cloud services that supports iOS Files app, which would include iCloud Drive.

  • What you are proposing isn't any more of a realistic option now than it was when I wrote the above post in January. The Files app doesn't offer a sync API, nor does iCloud Drive. Frankly neither is designed to store databases. CloudKit is Apple's solution for syncing databases with iCloud, and that is what we use in 1Password. I haven't seen any benefits to storing 1Password data in iCloud Drive instead of CloudKit, and there are a number of downsides. Those downsides include trying to fit a square peg in a round hole when a round hole is available and the peg is already in it. All that aside our focus is still on making 1Password.com the best possible offering that it can be. I don't see that changing in the forseeable future. I can say with a fairly high degree of confidence that we will not be building support for additional 3rd party sync options any time soon.

    I'm sorry I don't have the answer you were hoping for.

    Ben

  • philkim
    philkim
    Community Member

    @Ben,

    Thank you for your response. I fully agree that syncing via database being far superior to file-based vaults.

    However....

    One of my most used apps is Aqualia's Soulver, a calculator app that runs on iOS and macOS. It can store each worksheet on the iCloud Drive. When I run Soulver on both iPhone and MacBook Pro, whatever changes I make on one platform is immediately reflected on the other. Or more precisely, about 1 to 2 seconds after I save the worksheet. Soulver no doubt reloads the entire worksheet file. I am betting if I make changes during reload (or if it is offline), there would be risk of merge conflicts.

    Having said that, isn't 1Password's implementation of Dropbox file-based? While file-based storage may not be the future of 1Password, supporting iCloud Drive is at least not a regression from what I can tell.

    As I stated earlier, I have nothing against your strategy of focusing on 1Password.com and possibly other cross platform database engines. But 1Password is storing very sensitive information and I personally feel more comfortable storing them wherever I please.

  • Ben
    Ben
    edited December 2018

    You are correct that Dropbox is file based. iCloud Drive isn't something we're looking at.

    As I stated earlier, I have nothing against your strategy of focusing on 1Password.com and possibly other cross platform database engines. But 1Password is storing very sensitive information and I personally feel more comfortable storing them wherever I please.

    I understand that desire, but it isn't something we're going to be able to cater to.

    Ben

  • Strangely_Brown
    Strangely_Brown
    Community Member

    Hi Ben,
    If Apple have sorted whatever technical restriction prevented you allowing multiple vaults on iCloud, why then is it not now allowed?

    I have a non subscription licence and I choose to sync my data where I want it. I would also like to separate my work and personal data into separate vaults. I have tried this with DropBox but I don't want to use yet another platform just to do it and for a while there it looked like iCloud Drive was going to be answer, alas no. It works great between MacOS clients but not accessible from iOS (as explained above).

    I do not want to buy software by subscription (yes, I have heard all the arguments), and if there now no longer any technical hurdles, could you please just allow multiple vaults in iCloud sync?

    Thank you.

  • Hi @Strangely_Brown

    Our efforts are focused on our 1Password.com service. We do not have plans to add / improve 3rd party sync services at this time. I would not anticipate multiple vault support for iCloud within 1Password. If you require multiple vault sync, we suggest a 1Password membership.

    Ben

  • Strangely_Brown
    Strangely_Brown
    Community Member
    edited October 2019

    Thanks for the answer.

    "... at this time"? I think it would be more honest if you just came out and admitted that you have no intention of ever providing something that allows proper functionality without being forced into the subscription/cloud model.

  • @Strangely_Brown

    I don't have anything to add beyond what I said above; sorry.

    Ben

  • philkim
    philkim
    Community Member

    @Strangely_Brown, sadly, you don't have much of a choice. All of 1Password's major competitors require subscription pricing for features like multiple vaults. Agilebits knows this and is focusing their R&D on subscription customers.

    Not that I blame them. Those of us willing to pay subscription to store data on a cloud service of our choosing is far and few between.

    As a workaround, I recommend using tags and combine multiple vaults into a single iCloud vault. This makes it harder to share vaults with other people, however.

  • The only supported way to share 1Password data is via membership vaults. Tags may indeed be a reasonable workaround instead of multiple vaults, if you don't need to share, though:

    Organize with favorites and tags

    Ben

  • Strangely_Brown
    Strangely_Brown
    Community Member
    edited October 2019

    Hi Philkim,

    Thanks for your suggestion. I think I saw it earlier in the thread and I have started to go through my vault tagging the entries.

    I do understand their business model and their desire to get people signed up for subscription. I find it unfortunate that the industry seems to be heading that way en masse. I don't blame them (1P), I just don't like the dishonesty. They know they will never provide the functionality that we want, they know why, we know why and they know that we know. They just won't admit it.

    Cheers.

    "What's that smell in this room? Didn't you notice it, Brick? Didn't you notice a powerful and obnoxious odor of mendacity in this room?... There ain't nothin' more powerful than the odor of mendacity... You can smell it. It smells like death."

    • Big Daddy.
  • Unless you're insinuating some other motive I think we've been pretty up front about the fact that we think the best way forward is with 1Password.com membership and as such that is where our development efforts are focused. :+1:

    Ben

  • Strangely_Brown
    Strangely_Brown
    Community Member
    edited October 2019

    Whoosh! (that was the sound of the point flying over your head).

    I don't doubt that you believe wholeheartedly that the best way forward for you is the subscription/cloud model. Individuals make their own determination as to the best solution for them - something that you utterly fail to recognise - so, yes, you have been completely up-front about that. Any other inference you may draw is your own.

    What is so hard about just being honest and saying that you are not going to provide that functionality. Never mind about "at this time" or any other weasel words. Just be open and state what is, by now, quite plain to see.

  • I've said that as clearly and concisely as I'm able.

    I would not anticipate multiple vault support for iCloud within 1Password.

    Ben

  • Strangely_Brown
    Strangely_Brown
    Community Member
    edited October 2019

    Quite.

    Tagging seems to work well enough for now. Thanks philkim.

  • :+1:

    Ben

This discussion has been closed.