RFC505 Two solutions to a file transfer access problem

0505 Two solutions to a file transfer access problem. M.A. Padlipsky. June 1973. (Format: TXT=7476 bytes) (Status: UNKNOWN)

日本語訳
RFC一覧

参照

Network Working Group                                    M. A. Padlipsky
Request for Comments: 505                                    MIT-Multics
NIC: 16156                                                  25 June 1973


            Two Solutions to a File Transfer Access Problem

   In RFC #87, Bob Bressler raises the issue of how one can use the File
   Transfer Protocol to send a file to a user on another system without
   knowing that user's password.  In RFC 501, Kan Pogran points out
   certain objections to Bressler's solution of having a "daemon"
   process do the job -- in particular, the fact that it would require
   an interpretive access control mechanism in the daemon different from
   most system's normal access control mechanisms.  Because Ken felt
   that it would be too much of a digression in RFC 501 for him to cover
   the following points fully, I decided it might be of interest to deal
   with them separately: There are at least two solutions to the problem
   Bob raised in RFC 487 -- in regard to "my" sending "him" a file
   without knowing his password -- which don't give rise to the problems
   noted in RFC 501.  One hinges on adding a convention to the FTP, the
   other on adding a command.

   The first solution is very straightforward.  Instead of having me
   push the file, he could pull it.  That is, he uses his own "principal
   identifies" (thus solving access permission problems at his end) and
   his own User FTP to extract the file with the aid of my Server FTP.
   All this requires is that 1) I give appropriate access permission on
   my end, and 2) he have the ability to use my Server FTP.  The second
   condition is met by either a) his having an account on my system, or
   b) my system's having a known account for "free" Server FTP use. (*)

   So standing the model on its head solves the functional problem,
   although he has to pay for the User FTP.  But, then, it's he who
   wants the file, so why shouldn't he?  On the other hand, "he" might
   not be logged in right now and I might be -- and by the time he can
   get logged in my system might be scheduled to be down.  Fortunately,
   there's also a moderately straightforward solution to the problem as
   originally posed.  This goes back to the mechanism used to prevent
   capricious and/or malicious card input on Multics: Instead of placing
   input (card deck or transferred file) directly into the alleged
   recipient's directory, place it in a "pool" directory and merely
   inform the recipient of its arrival.  If he really wanted it, he then
   copies it into his own directory.  That way, unauthorized people
   can't freeload on somebody else's directory (and the pool is, of
   course, periodically purged), nor can they clobber others' already-
   existing files.





Padlipsky                                                       [Page 1]

RFC 505        Two Solutions to a File Transfer             25 June 1973


[1]

   This second solution has the virtue of requiring fewer steps than the
   first, and would work even when the first wouldn't; so even though it
   would require another FTP command, I propose the addition of a new
   FTP "POOL" command, which does what the last paragraph described.
   Depending on the various Servers' protection mechanisms, the pooled
   files could be made readable only by the declared recipients.  This
   would, for example, offer an easy way to get some privacy for "mail"
   (which otherwise is likely to be readable by anybody who can write
   it), although other solutions to that particular problem of course
   exist.  At any rate, the POOL command's syntax would be POOL id name
   where id is a valid user identifier on the Server, and name is the
   desired name to be placed on the about-to-be-transferred file in the
   Server's pool directory.  (*) (Servers must, of course, do whatever
   pre- or post-fixing to name is necessary to make it unique within the
   pool.)  The transfer then takes place in the same manner as with
   STOR, and on successful completion the Server sends a message to id
   that he should pick up name (suitably) modified to look like a local
   pathname) if he wants it. The message should also identify the
   putative sender (even though it might have come in from a free
   account).  The id should, naturally, be validated before starting the
   transfer.

   The question has been raised locally as to why we don't simply take a
   pooled view of STOR on Multics and forget about pushing for a new
   command.  To do so would have two drawbacks, I feel: first, I think
   we'd be remiss in our duty as NWG participants if we failed to
   attempt to offer solutions to protocol problems to the Network
   community as a whole.  Second, on a less pious but more practical
   note, if we don't know the id we have to infer it from the pathname,
   which rules out abbreviations and forces senders to have to know too
   much  about our internal structure. (The alternative of requiring an
   additional argument to the STOR is subject to the same objection.  It
   is also subject to the objection that protocols really shouldn't be
   unilaterally extended.  Of course, we could go to "site-specific
   parameters", but that's complicating life so much that the
   alternative of no unsolicited files seems preferable.)  Therefore, I
   think that POOL would be worthwhile unless no other Servers have
   enough access control for it to be necessary anywhere but on Multics.
   At the very least, having the protocol specify an "access id"
   optional argument to STOR seems desirable.

[2]

   Input as to whether any of the other Servers has file access control
   abilities similar to those of Multics would be useful in clarifying
   whether this whole area is one which needs specific treatment at the



Padlipsky                                                       [Page 2]

RFC 505        Two Solutions to a File Transfer             25 June 1973


   Protocol level, or merely needs internally acceptable handling at our
   end.  In the meantime, if you're trying to send an unsolicited file
   to us for free, you can use the NETML mechanism with no directory
   qualification on the target pathname in the STOR, then MAIL the file
   name to the intended recipient, who will copy the file into his own
   directory (from, in our syntax, >udd>Cnet>anonymous).  That's all
   pretty complicated, but it sure does go to show that higher-level
   protocols need to know an awful lot about the various operating
   systems.  At any rate, comment on either Bressler's Problem, POOL,
   STOR, or other people's access control mechanisms would all be
   appreciated.

Endnotes

   [1] (*) For b),I suggest that the USER NETML / PASS NETML discipline
   of RFC 491 be extended.  That is, Hosts which allow free use of their
   FTP Servers should accept that pair of FTP commands as an indication
   to commence free service.  Whether this leads to a login of a dummy
   user or a passoff to a daemon process is a matter of local
   implementation preference, of course.

   [2] (*) Note that this definition relieves the user of having to know
   the Server's pathname for the pool directory.


         [ This RFC was put into machine readable form for entry ]
          [ into the online RFC archives by Thomas Farmer 11/98 ]
























Padlipsky                                                       [Page 3]

一覧

 RFC 1〜100  RFC 1401〜1500  RFC 2801〜2900  RFC 4201〜4300 
 RFC 101〜200  RFC 1501〜1600  RFC 2901〜3000  RFC 4301〜4400 
 RFC 201〜300  RFC 1601〜1700  RFC 3001〜3100  RFC 4401〜4500 
 RFC 301〜400  RFC 1701〜1800  RFC 3101〜3200  RFC 4501〜4600 
 RFC 401〜500  RFC 1801〜1900  RFC 3201〜3300  RFC 4601〜4700 
 RFC 501〜600  RFC 1901〜2000  RFC 3301〜3400  RFC 4701〜4800 
 RFC 601〜700  RFC 2001〜2100  RFC 3401〜3500  RFC 4801〜4900 
 RFC 701〜800  RFC 2101〜2200  RFC 3501〜3600  RFC 4901〜5000 
 RFC 801〜900  RFC 2201〜2300  RFC 3601〜3700  RFC 5001〜5100 
 RFC 901〜1000  RFC 2301〜2400  RFC 3701〜3800  RFC 5101〜5200 
 RFC 1001〜1100  RFC 2401〜2500  RFC 3801〜3900  RFC 5201〜5300 
 RFC 1101〜1200  RFC 2501〜2600  RFC 3901〜4000  RFC 5301〜5400 
 RFC 1201〜1300  RFC 2601〜2700  RFC 4001〜4100  RFC 5401〜5500 
 RFC 1301〜1400  RFC 2701〜2800  RFC 4101〜4200 

スポンサーリンク

Unicode文字のブロックの範囲

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る