Encrypt cookies
This commit is contained in:
@@ -61,13 +61,19 @@ type indexPage struct {
|
||||
func (s *Server) handleIndex(w http.ResponseWriter, r *http.Request) {
|
||||
// A remembered token is resolved server-side, so the page can show the real
|
||||
// limits without the cookie ever being readable by a script.
|
||||
lim, err := s.limitsFor(r, cookieCredential(r))
|
||||
lim, err := s.limitsFor(r, s.cookieCredential(r))
|
||||
stale := false
|
||||
if err != nil {
|
||||
switch {
|
||||
case err != nil:
|
||||
// The token was revoked or the file was edited; end the session rather
|
||||
// than leave the caller wondering why uploads fail.
|
||||
s.forget(w, r)
|
||||
lim, stale = auth.Anonymous(s.cfg), true
|
||||
case s.staleSession(r):
|
||||
// A cookie this server cannot open. Same treatment: it is not a
|
||||
// session, and it should stop being sent.
|
||||
s.forget(w, r)
|
||||
stale = true
|
||||
}
|
||||
|
||||
s.render(w, http.StatusOK, "index.html", indexPage{
|
||||
@@ -122,7 +128,7 @@ func (s *Server) renderInfo(w http.ResponseWriter, r *http.Request, m *store.Met
|
||||
Size: config.FormatSize(m.Size),
|
||||
Expires: describeExpiry(m.Expires, s.now()),
|
||||
URL: s.objectURL(r, m.ID),
|
||||
CanDelete: s.mayDelete(r, m, credential(r)),
|
||||
CanDelete: s.mayDelete(r, m, s.credential(r)),
|
||||
Error: errMsg,
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user