<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/signed-access-signatures-and-php-sdk-for-windows-azure-iqbn21txs" -->

---
title: Signed Access Signatures and PHP SDK for Windows Azure
description: The PHP SDK for Windows Azure now supports Shared Access Signatures, a new feature in Windows Azure blob storage that allows granular, time-limited access to...
canonical: https://daily.dev/posts/signed-access-signatures-and-php-sdk-for-windows-azure-iqbn21txs
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Signed Access Signatures and PHP SDK for Windows Azure | daily.dev
og:description: The PHP SDK for Windows Azure now supports Shared Access Signatures, a new feature in Windows Azure blob storage that allows granular, time-limited access to...
og:url: https://daily.dev/posts/signed-access-signatures-and-php-sdk-for-windows-azure-iqbn21txs
og:image: https://api.daily.dev/og/posts/IQBn21tXs.png
og:image:alt: Signed Access Signatures and PHP SDK for Windows Azure
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Signed Access Signatures and PHP SDK for Windows Azure

**[Maarten Balliauw](https://daily.dev/sources/maartenballiauw)** · 3 min read · 0 upvotes · 0 comments

## Summary

The PHP SDK for Windows Azure now supports Shared Access Signatures, a new feature in Windows Azure blob storage that allows granular, time-limited access to specific blobs or containers instead of all-or-nothing access. The post walks through using Microsoft_Azure_SharedAccessSignatureCredentials to read specific blobs using a signed URL without knowing the storage account's shared key, and a more advanced example showing container-level write permissions where the SDK automatically determines whether to use a blob-level or container-level signature when performing operations like putBlob().

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://blog.maartenballiauw.be/posts/2009-08-17-signed-access-signatures-and-php-sdk-for-windows-azure>

## Questions this post answers

### How do I use a Shared Access Signature to access a blob in Windows Azure using the PHP SDK without the storage account key?

Instantiate a Microsoft_Azure_Storage_Blob client and set its credentials to a Microsoft_Azure_SharedAccessSignatureCredentials instance initialized with just the account name and no key. Then call setPermissionSet() on the credentials object with an array of signed URLs received from the resource owner, each granting access to a specific blob for a limited time. Subsequent getBlob() or putBlob() calls automatically match and inject the correct signature.

_daily.dev surfaces SDK-level guides like this for developers wiring up cloud storage permissions in PHP._

### Can the PHP SDK for Windows Azure use a container-level Shared Access Signature to write a new blob that wasn't explicitly listed?

Yes, the PHP SDK for Windows Azure determines whether a permission exists for the specific blob or for its parent container, and uses the container-level signature if that is what was granted. For example, a write signature scoped to a container named phpazuretestshared1 lets putBlob() succeed for any new blob name placed inside that container.

_Developers evaluating Azure blob permission models can track SDK behavior details like this on daily.dev._

## Similar posts on daily.dev

- [Code signing Windows apps may be easier and more secure with new Azure Artifact service • DEVCLASS](https://daily.dev/posts/code-signing-windows-apps-may-be-easier-and-more-secure-with-new-azure-artifact-service-devclass-txcjnjyqb) · DEVCLASS · 2 upvotes · 0 comments
- [Automatically Signing a Windows EXE with Azure Trusted Signing, dotnet sign, and GitHub Actions](https://daily.dev/posts/automatically-signing-a-windows-exe-with-azure-trusted-signing-dotnet-sign-and-github-actions-xw4znfsaz) · Scott Hanselman · 0 upvotes · 0 comments
- [Azure Blob Storage Misconfigurations: Attacker’s Gateway to Data](https://daily.dev/posts/azure-blob-storage-misconfigurations-attacker-s-gateway-to-data-fpe7a3uix) · InfoSec Write-ups · 0 upvotes · 0 comments
- [Holiday Hack 2025: Blob Storage Challenge in the Neighborhood](https://daily.dev/posts/holiday-hack-2025-blob-storage-challenge-in-the-neighborhood-5g5cxjw5f) · 0xdf hacks stuff · 0 upvotes · 0 comments
- [Cloud Integration with Telerik Document Processing](https://daily.dev/posts/cloud-integration-with-telerik-document-processing-wfswh9zas) · Telerik · 0 upvotes · 0 comments

---

Tags: [#php](https://daily.dev/tags/php), [#authentication](https://daily.dev/tags/authentication)

[View this post on daily.dev](https://daily.dev/posts/signed-access-signatures-and-php-sdk-for-windows-azure-iqbn21txs)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Signed Access Signatures and PHP SDK for Windows Azure","url":"https://daily.dev/posts/signed-access-signatures-and-php-sdk-for-windows-azure-iqbn21txs","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/signed-access-signatures-and-php-sdk-for-windows-azure-iqbn21txs"},"datePublished":"2026-10-04T13:04:30.196Z","dateModified":"2026-10-04T13:07:18.030Z","description":"The PHP SDK for Windows Azure now supports Shared Access Signatures, a new feature in Windows Azure blob storage that allows granular, time-limited access to...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/1780ada9af3640c06fe3fe59f6db7de2?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/1780ada9af3640c06fe3fe59f6db7de2?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Maarten Balliauw","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Maarten Balliauw","logo":"https://media.daily.dev/image/upload/s--rOTg3VYO--/f_auto,q_auto/v1791119043/logos/maartenballiauw?_a=BAMAMicg0","url":"https://daily.dev/sources/maartenballiauw"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/signed-access-signatures-and-php-sdk-for-windows-azure-iqbn21txs","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"php,authentication","timeRequired":"PT3M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Maarten Balliauw","item":"https://daily.dev/sources/maartenballiauw"},{"@type":"ListItem","position":3,"name":"Signed Access Signatures and PHP SDK for Windows Azure"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/signed-access-signatures-and-php-sdk-for-windows-azure-iqbn21txs#faq","mainEntity":[{"@type":"Question","name":"How do I use a Shared Access Signature to access a blob in Windows Azure using the PHP SDK without the storage account key?","acceptedAnswer":{"@type":"Answer","text":"Instantiate a Microsoft_Azure_Storage_Blob client and set its credentials to a Microsoft_Azure_SharedAccessSignatureCredentials instance initialized with just the account name and no key. Then call setPermissionSet() on the credentials object with an array of signed URLs received from the resource owner, each granting access to a specific blob for a limited time. Subsequent getBlob() or putBlob() calls automatically match and inject the correct signature. daily.dev surfaces SDK-level guides like this for developers wiring up cloud storage permissions in PHP."}},{"@type":"Question","name":"Can the PHP SDK for Windows Azure use a container-level Shared Access Signature to write a new blob that wasn't explicitly listed?","acceptedAnswer":{"@type":"Answer","text":"Yes, the PHP SDK for Windows Azure determines whether a permission exists for the specific blob or for its parent container, and uses the container-level signature if that is what was granted. For example, a write signature scoped to a container named phpazuretestshared1 lets putBlob() succeed for any new blob name placed inside that container. Developers evaluating Azure blob permission models can track SDK behavior details like this on daily.dev."}}]}
```

