浏览代码

Merge pull request #13393 from tiborvass/fix-token-bug

registry: Fix auth bug
Jessie Frazelle 10 年之前
父节点
当前提交
6c5a140f8a
共有 1 个文件被更改,包括 2 次插入5 次删除
  1. 2 5
      registry/session.go

+ 2 - 5
registry/session.go

@@ -80,13 +80,10 @@ func (tr *authTransport) RoundTrip(orig *http.Request) (*http.Response, error) {
 		return tr.RoundTripper.RoundTrip(req)
 	}
 
-	var askedForToken bool
-
 	// Don't override
 	if req.Header.Get("Authorization") == "" {
-		if req.Header.Get("X-Docker-Token") == "true" {
+		if req.Header.Get("X-Docker-Token") == "true" && len(tr.Username) > 0 {
 			req.SetBasicAuth(tr.Username, tr.Password)
-			askedForToken = true
 		} else if len(tr.token) > 0 {
 			req.Header.Set("Authorization", "Token "+strings.Join(tr.token, ","))
 		}
@@ -96,7 +93,7 @@ func (tr *authTransport) RoundTrip(orig *http.Request) (*http.Response, error) {
 		delete(tr.modReq, orig)
 		return nil, err
 	}
-	if askedForToken && len(resp.Header["X-Docker-Token"]) > 0 {
+	if len(resp.Header["X-Docker-Token"]) > 0 {
 		tr.token = resp.Header["X-Docker-Token"]
 	}
 	resp.Body = &transport.OnEOFReader{