Class AzureSasCredential
Represents a credential that uses a shared access signature to authenticate to an Azure Service. It is used for authenticating and authorizing access to Azure services using a shared access signature.
A shared access signature is a string-based token that grants limited permissions and access to specific resources within an Azure service for a specified period. It allows you to provide time-limited access to your resources without sharing your account key or other sensitive credentials.
The AzureSasCredential
enables you to authenticate and access Azure services that
support shared access signatures. By creating an instance of the AzureSasCredential
class and providing the
SAS token as a parameter, you can use this credential to authenticate requests to Azure services.
To use the Credential, you typically pass it to the appropriate Azure client or service client builder during instantiation. The library internally handles the authentication process and includes the SAS token in the HTTP requests made to the Azure service, allowing you to access the resources specified in the SAS token.
The AzureSasCredential
is particularly useful when you need to grant temporary and limited access to
specific resources, such as Azure Storage containers, blobs, queues, or files, without exposing
your account key.
It's important to note that the availability and usage of the AzureSasCredential
may depend on the
specific Azure service and its support for shared access signatures. Additionally, the format and content of the
SAS token may vary depending on the service and resource you are targeting.
Sample: Azure SAS Authentication
The following code sample demonstrates the creation of a AzureSasCredential
,
using the sas token to configure it.
AzureSasCredential azureSasCredential = new AzureSasCredential("AZURE-SERVICE-SAS-KEY");
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionAzureSasCredential
(String signature) Creates a credential that authorizes request with the given shared access signature.AzureSasCredential
(String signature, Function<String, String> signatureEncoder) Creates a credential that authorizes request within the given shared access signature. -
Method Summary
Modifier and TypeMethodDescriptionRetrieves the shared access signature associated to this credential.Rotates the shared access signature associated to this credential.
-
Constructor Details
-
AzureSasCredential
Creates a credential that authorizes request with the given shared access signature.The
signature
passed is assumed to be encoded. This constructor is effectively the same as callingnew AzureSasCredential(signature, null))
.- Parameters:
signature
- The shared access signature used to authorize requests.- Throws:
NullPointerException
- Ifsignature
isnull
.IllegalArgumentException
- Ifsignature
is an empty string.
-
AzureSasCredential
Creates a credential that authorizes request within the given shared access signature.If
signatureEncoder
is non-null thesignature
, and allupdated signatures
, will be encoded using the function.signatureEncoder
should be as idempotent as possible to reduce the chance of double encoding errors.- Parameters:
signature
- The shared access signature used to authorize requests.signatureEncoder
- An optional function which encodes thesignature
.- Throws:
NullPointerException
- Ifsignature
isnull
.IllegalArgumentException
- Ifsignature
is an empty string.
-
-
Method Details
-
getSignature
Retrieves the shared access signature associated to this credential.- Returns:
- The shared access signature being used to authorize requests.
-
update
Rotates the shared access signature associated to this credential.- Parameters:
signature
- The new shared access signature to be associated with this credential.- Returns:
- The updated
AzureSasCredential
object. - Throws:
NullPointerException
- Ifsignature
isnull
.IllegalArgumentException
- Ifsignature
is an empty string.
-