Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#0046 New Auth Flow #227

Open
david-maidsafe opened this issue Sep 3, 2018 · 3 comments
Open

#0046 New Auth Flow #227

david-maidsafe opened this issue Sep 3, 2018 · 3 comments
Labels
RFC-Proposal RFC Proposal - used for tracking through process on Project board. NOT an "issue" as such.

Comments

@david-maidsafe
Copy link
Contributor

david-maidsafe commented Sep 3, 2018

New Auth Flow

Summary:

This RFC outlines a new process to give applications authorised access to act on the SAFE network with the user's credentials. In particular, it is designed for the mobile and embedded use case in mind.


@david-maidsafe david-maidsafe added the RFC-Rejected RFC Proposal that has been rejected label Sep 3, 2018
@david-maidsafe david-maidsafe added RFC-Proposal RFC Proposal - used for tracking through process on Project board. NOT an "issue" as such. and removed RFC-Rejected RFC Proposal that has been rejected labels Sep 4, 2018
@happybeing
Copy link

I propose that we amend this RFC to support creating of an empty directory in an NFS mutable data. For example when using a 'mkdir' command on a FUSE mount rather than implicitly creating a folder when uploading of a file. This can achieved by creating an entry for a file called .nfsfolder or perhaps _nfsfolder at the directory path. I'll use .nfsfolder in the remainder of this note.

Example: mkdir lib would create an entry in an NFS MD of lib/.nfsfolder.

That file can be an immutable data shared by all applications rather than created every time this is needed. I propose the immutable data used is a text file with content such as:

".nfsfolder is created by 'mkdir' to allow the creation of an empty folder on SAFE NFS mutable data"

Users would not normally see this file or the content, but it might as well be meaningful. The actual file and the content will not matter though, we just rely on the name of the file in the mutable data.

This would provide a decent emulation of empty folders allowing mkdir and rm commands on a command line that understand the need for and purpose of the .nfsfolder file. Other commands can ignore the file and so hide its existence from the user and similarly, utility libraries can hide its existence from applications.

Only directories created as empty would contain this file, so any commands for creating or removing directories MUST handle it transparently.

Other commands and file system operations SHOULD ignore the .nfsfolder if present, so hiding its existence and content from the user or any applications using a file system emulation. So it would only be visible to applications accessing the mutable data directly.

Application code MUST NOT rely on the existence or absence of .nfsfolder, and SHOULD work as expected in either case.

@hitman401
Copy link
Contributor

@theWebalyst, I believe that we should have a separate RFC for representing the files and folders in the network using LDP/RDF. Empty folder creation is much cleaner in that approach as you end up adding an entry in the parent LDP container. Would like to know what is your opinion on this?

@happybeing
Copy link

Assuming we're doing both NFS and RDF APIs and that we don't know yet whether the RDF API will sit on top of NFS maybe that's a separate discussion?

I'm assuming that NFS will remain whatever, so only thinking about that here. Last night I did think of a way to support it in the UX without changing NFS.

Now I've thought about a bit more it I'm not sure if there are cases where it is needed after all because an empty directory generally has no function, except to allow a user the concept of a temporary receptacle that need only become permanent when she puts something in it.

Would it really matter if I create a directory, reboot my machine and the directory is not there?

I guess if you added access controls to an empty directory so that others could put stuff in it, then it is needed. So in that case it would still be OK not to support empty directories so long as you used a file in the directory to implement access control, but if they were held separately (eg in the MD entry metadata) then you would need empty directories.

So maybe we can leave this until we're thinking about access control in more detail?

Can you think of any other cases where an empty directory really does need to be permanent?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
RFC-Proposal RFC Proposal - used for tracking through process on Project board. NOT an "issue" as such.
Projects
None yet
Development

No branches or pull requests

3 participants