| @@ 269-317 (lines=49) @@ | ||
| 266 | * https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas | |
| 267 | * @return string | |
| 268 | */ | |
| 269 | public function generateBlobServiceSharedAccessSignatureToken( | |
| 270 | $signedResource, | |
| 271 | $resourceName, | |
| 272 | $signedPermissions, | |
| 273 | $signedExpiry, | |
| 274 | $signedStart = "", | |
| 275 | $signedIP = "", | |
| 276 | $signedProtocol = "", | |
| 277 | $signedIdentifier = "", | |
| 278 | $cacheControl = "", | |
| 279 | $contentDisposition = "", | |
| 280 | $contentEncoding = "", | |
| 281 | $contentLanguage = "", | |
| 282 | $contentType = "" | |
| 283 |     ) { | |
| 284 | // check that the resource name is valid. | |
| 285 | Validate::isString($signedResource, 'signedResource'); | |
| 286 | Validate::notNullOrEmpty($signedResource, 'signedResource'); | |
| 287 | Validate::isTrue( | |
| 288 | $signedResource == Resources::RESOURCE_TYPE_BLOB || | |
| 289 | $signedResource == Resources::RESOURCE_TYPE_CONTAINER, | |
| 290 | \sprintf( | |
| 291 | Resources::INVALID_VALUE_MSG, | |
| 292 | '$signedResource', | |
| 293 | 'Can only be \'b\' or \'c\'.' | |
| 294 | ) | |
| 295 | ); | |
| 296 | ||
| 297 | return $this->generateServiceSharedAccessSignatureToken( | |
| 298 | Resources::RESOURCE_TYPE_BLOB, | |
| 299 | $signedResource, | |
| 300 | $resourceName, | |
| 301 | $signedPermissions, | |
| 302 | $signedExpiry, | |
| 303 | $signedStart, | |
| 304 | $signedIP, | |
| 305 | $signedProtocol, | |
| 306 | $signedIdentifier, | |
| 307 | $cacheControl, | |
| 308 | $contentDisposition, | |
| 309 | $contentEncoding, | |
| 310 | $contentLanguage, | |
| 311 | $contentType, | |
| 312 | '', | |
| 313 | '', | |
| 314 | '', | |
| 315 | '' | |
| 316 | ); | |
| 317 | } | |
| 318 | ||
| 319 | /** | |
| 320 | * Generates File service shared access signature. | |
| @@ 350-398 (lines=49) @@ | ||
| 347 | * https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas | |
| 348 | * @return string | |
| 349 | */ | |
| 350 | public function generateFileServiceSharedAccessSignatureToken( | |
| 351 | $signedResource, | |
| 352 | $resourceName, | |
| 353 | $signedPermissions, | |
| 354 | $signedExpiry, | |
| 355 | $signedStart = "", | |
| 356 | $signedIP = "", | |
| 357 | $signedProtocol = "", | |
| 358 | $signedIdentifier = "", | |
| 359 | $cacheControl = "", | |
| 360 | $contentDisposition = "", | |
| 361 | $contentEncoding = "", | |
| 362 | $contentLanguage = "", | |
| 363 | $contentType = "" | |
| 364 |     ) { | |
| 365 | // check that the resource name is valid. | |
| 366 | Validate::isString($signedResource, 'signedResource'); | |
| 367 | Validate::notNullOrEmpty($signedResource, 'signedResource'); | |
| 368 | Validate::isTrue( | |
| 369 | $signedResource == Resources::RESOURCE_TYPE_FILE || | |
| 370 | $signedResource == Resources::RESOURCE_TYPE_SHARE, | |
| 371 | \sprintf( | |
| 372 | Resources::INVALID_VALUE_MSG, | |
| 373 | '$signedResource', | |
| 374 | 'Can only be \'f\' or \'s\'.' | |
| 375 | ) | |
| 376 | ); | |
| 377 | ||
| 378 | return $this->generateServiceSharedAccessSignatureToken( | |
| 379 | Resources::RESOURCE_TYPE_FILE, | |
| 380 | $signedResource, | |
| 381 | $resourceName, | |
| 382 | $signedPermissions, | |
| 383 | $signedExpiry, | |
| 384 | $signedStart, | |
| 385 | $signedIP, | |
| 386 | $signedProtocol, | |
| 387 | $signedIdentifier, | |
| 388 | $cacheControl, | |
| 389 | $contentDisposition, | |
| 390 | $contentEncoding, | |
| 391 | $contentLanguage, | |
| 392 | $contentType, | |
| 393 | '', | |
| 394 | '', | |
| 395 | '', | |
| 396 | '' | |
| 397 | ); | |
| 398 | } | |
| 399 | ||
| 400 | /** | |
| 401 | * Generates Table service shared access signature. | |