microsoft-azure-storage/src/com/microsoft/azure/storage/file/CloudFile.java
public String generateSharedAccessSignature(
            final SharedAccessFilePolicy policy, final SharedAccessFileHeaders headers, final String groupPolicyIdentifier)
            throws InvalidKeyException, StorageException {

        return this.generateSharedAccessSignature(policy, headers, groupPolicyIdentifier,
                null /* IP range */, null /* protocols */);
    }
public String generateSharedAccessSignature(
            final SharedAccessFilePolicy policy, final SharedAccessFileHeaders headers, final String groupPolicyIdentifier)
            throws InvalidKeyException, StorageException {

        return this.generateSharedAccessSignature(policy, headers, groupPolicyIdentifier,
                null /* IP range */, null /* protocols */);
    }
Returns a shared access signature for the file using the specified group policy identifier and
shared access file headers. Note this does not contain the leading "?".

@param policy
A <code>{@link SharedAccessFilePolicy}</code> object that represents the access policy for the shared
access signature.
@param headers
A <code>{@link SharedAccessFileHeaders}</code> object that represents the optional header values to
set for a file accessed with this shared access signature.
@param groupPolicyIdentifier
A <code>String</code> that represents the share-level access policy.

@return A <code>String</code> that represents the shared access signature.

@throws IllegalArgumentException
If the credentials are invalid.
@throws InvalidKeyException
If the credentials are invalid.
@throws StorageException
If a storage service error occurred.