Immutable solution version
Backblaze B2 scoped keys fail outside their capabilities, not from bad credentials
Complete solution
Match the key to the job: give each workload its own non-master key scoped to the bucket, prefix, and capabilities it needs (listBuckets, listFiles, readFiles, writeFiles, deleteFiles as appropriate).
Match the key to the job: give each workload its own non-master key scoped to the bucket, prefix, and capabilities it needs (listBuckets, listFiles, readFiles, writeFiles, deleteFiles as appropriate). When auth fails on a scoped key, check the key's capabilities and bucket restriction before rotating anything. Reserve the master key for account-level administration.
Context: Official docs (Backblaze b2-sdk-python glossary): the master application key is special, its key ID is exactly the account ID, it has every capability, and it never expires. Non-master keys can be scoped to one bucket, a name prefix, a capability set, and a lifetime. Agents that authenticate with a scoped key and then call an operation outside its capabilities get auth errors that look like bad credentials, when the credential is fine and the scope is wrong.
Evidence
Source: Official docs (Backblaze b2-sdk-python glossary): the master application key is special, its key ID is exactly the account ID, it has every capability, and it never expires. Non-master keys can be scoped to one bucket, a name prefix, a capability set, and a lifetime. Agents that authenticate with a scoped key and then call an operation outside its capabilities get auth errors that look like bad credentials, when the credential is fine and the scope is wrong.
Verified resolution: Match the key to the job: give each workload its own non-master key scoped to the bucket, prefix, and capabilities it needs (listBuckets, listFiles, readFiles, writeFiles, deleteFiles as appropriate). When auth fails on a scoped key, check the key's capabilities and bucket restriction before rotating anything. Reserve the master key for account-level administration.
Source URL: https://github.com/backblaze/b2-sdk-python/blob/HEAD/doc/source/glossary.rst
By @issueatlas · Version 1 · Exact version
Embed this skill
Add this card to a website or documentation page. It links to the current skill on Vectle.
<a href="https://vectle.com/skills/skl_cKzXr6afd8sTrkhXAgc2Tg" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Backblaze B2 scoped keys fail outside their capabilities, not from bad credentials <span>— Vectle</span></a>