sandstorm-io / sandstorm

Sandstorm is a self-hostable web productivity suite. It's implemented as a security-hardened web app package manager.
https://sandstorm.io
Other
6.72k stars 705 forks source link

[Feature Request] Share grain with existing user #701

Closed nathanielhourt closed 8 years ago

nathanielhourt commented 9 years ago

Optimally I would not need to leave Sandstorm to share a grain with another user who already has an account on the same Sandstorm server. As far as I can tell, there's no way to share a file with this user without communicating a link over a side-channel.

A simple UI for this would be to take the new invite-by-email feature, and if the email is already a registered user, that user would receive a notification of the new shared grain (possibly instead of an email, though the wording in the share dialog would need to change in this case). I have just tried inviting an email address to see a grain, and even when that account looked in its "Shared with me" list the grain was not listed.

Am I correct in concluding it is currently not possible to share a grain without using a side-channel?

ocdtrekkie commented 9 years ago

I know this is something the Sandstorm team has been working on and intends to have, but isn't yet available.

The biggest concern is to ensure that these sorts of features can't be used to reveal the existence of another account on the server or leak any data about them. They have a flow for it designed, and I think some of the code is committed, but it isn't available yet.

nathanielhourt commented 9 years ago

Glad to hear it! I thought it must be planned, and I'm glad to hear they're making sure it gets done right. Thanks for the information. :)

paulproteus commented 9 years ago

For what it's worth, we call this "Share by Identity", and the mockups for sharing that Kenton sent to sandstorm-dev is the current plan. I believe David is working on this, though I know of no particular ETA!

kpreid commented 9 years ago

I'd like to see this being an app within Sandstorm (via powerbox), rather than building a messaging feature into the platform. At a minimum, please don't have yet another separate inbox/notifications thing...

bb010g commented 9 years ago

@kpreid commented on Aug 20, 2015, 5:28 PM PDT:

I'd like to see this being an app within Sandstorm (via powerbox), rather than building a messaging feature into the platform. At a minimum, please don't have yet another separate inbox/notifications thing...

I don't see this as needing a full on messaging client. Couldn't it just tie in with the existing notifications?

@paulproteus commented on Aug 20, 2015, 3:28 PM PDT:

Could you link those?

paulproteus commented 9 years ago

re: Share by Identity, requesting mockups:

@kpreid - https://groups.google.com/forum/#!topic/sandstorm-dev/pSOzLbztizs , specifically the PNG attached to it. The idea is that in the top-left, when you "Send an invite", it searches the Sandstorm install for a user with that email address, rather than necessarily sending the out-of-band email. This (I believe) addresses @nathanhourt 's request. (Though it doesn't exist yet! But when you see "Share by identity" in the weekly planning emails, now you know what that's about.)

re: messaging feature: We do already have a notifications UI, though we hardly use it for anything at the moment. (The one notification we theoretically send is "This app will stay alive even when you close the tab", and we don't have any apps in the app list that use that yet.) I imagine we'd send the user a notification via that mechanism. However, I'm sure we're open to other ideas, @kpreid !

bb010g commented 9 years ago

It would be nice if you could just type the name of someone in your contacts and select from a filtered list (perhaps with avatars showing).

paulproteus commented 9 years ago

+1 to Brayden's comment. We're working on it, though I can't promise a time-line, but I can say we know this is very important!

joncamfield commented 8 years ago

Having a "permission" level for users of apps/grains would be amazingly powerful for using this to replace usage of other cloud offerings - LDAP (which could also offer cert based login and other integrations) or building on the internal user settings to have good access controls and groups/teams would be amazing.

paulproteus commented 8 years ago

Hi Jon and all,

I think an alpha version of this went live in a very recent build. Can you try now?

see a list of people you can share with by "identity".

@jparyani and @dwrensha have been hard at work on the code behind this, and it's alpha-level right now, but hopefully you can test it out and let us know what what further changes are needed.

joncamfield commented 8 years ago

@paulproteus - the @ does appear to work for existing members - fabulous! I'd still be interested in a more robust group/access management system, but this is a great improvement.

joncamfield commented 8 years ago

As a follow-up, I'm having mixed luck with this - the first user I added I can @reply, the second I cannot. Let me know where I can extract any useful debug/log info and I'll provide it.

jparyani commented 8 years ago

This is slightly confusing right now, but the users must be in your contacts before you can share with them directly by identity or @handle. The only way you can add a contact is by sharing a link with them (either by typing their email in the sharing dialog or manually giving them a sharing link), and then having them open the link and choose to reveal their identity to you.

paulproteus commented 8 years ago

@neynah says this is closed, so I am going to mark it as such!