2017-08-11 32 views
1

我正在將文件從我的節點應用程序上傳到Firebase存儲。我使用密鑰創建了新的服務帳戶用戶。上傳工作完美,但我無法從Firebase管理控制檯下載任何文件。獲取錯誤響應:Firebase存儲的權限問題,無法從管理面板下載文件

{ 
    "error": { 
    "code": 401, 
    "message": "Unauthorized. Could not perform this operation. " 
    } 
} 

我與我的主要Gmail帳戶登錄(即火力地堡的所有者)我認爲它應該有訪問所有資源。 這些是我已經盡了權限設置:

service firebase.storage { 
    match /b/{bucket}/o { 
    match /{allPaths=**} { 
     allow read, write: if request.auth != null; 
    } 
    } 
} 

service firebase.storage { 
    match /b/{bucket}/o { 
    match /{allPaths=**} { 
     allow read, write: if true; 
    } 
    } 
} 

service firebase.storage { 
    match /b/{bucket}/o { 
    match /{allPaths=**} { 
     allow read, write; 
    } 
    } 
} 

他們都沒有幫助我得到了許可。

+0

您用來上傳和下載的代碼是什麼? –

+0

我沒有使用代碼。正如我上面所述,問題是從Firebase控制檯(管理面板)下載數據。上傳工作完美(不要認爲上傳代碼在這裏是相關的,它是一個小型的nodejs應用程序),我可以看到這些文件,只是不能訪問它們。這很奇怪,因爲我是帳戶的所有者並擁有最高權限。 – somerandomusername

回答

1

通過Firebase控制檯下載文件取決於您作爲開發人員在GCS存儲桶上的權限,而規則僅將訪問指定爲通過Firebase身份驗證進行身份驗證的用戶。您可以檢查您的GCS bucket permissions。如果您看到權限缺失,則可以授予您自己的存儲管理員角色。

您可能擁有項目所有權,但沒有權限。如果存儲桶說您無法添加權限,您仍然可以通過IAM & Admin頁面授予您項目級別的存儲管理員權限來解決此問題。

這將允許您在Firebase控制檯中下載文件,並讓您編輯存儲區權限。有關角色和權限的更多信息,請參閱查看docs on IAM access control