Open dlstucki opened 4 years ago
In the meantime here is a work-around: https://github.com/Azure/azure-relay-java/issues/55#issuecomment-549942046 write a class extending TokenProvider that allows changing the key-name+key_value or a signature itself. Pseudo-code
public class UpdatableSharedAccessSignatureTokenProvider extends TokenProvider {
// When the credentials change replace this object:
private /*SharedAccessSignature*/TokenProvider innerSasTokenProvider;
. . .
public void updateCredentials(String keyName, String keyValue) {
this.innerSasTokenProvider = TokenProvider.createSharedAccessSignatureTokenProvider(keyName, keyValue);
}
public void updateCredentials(String signature) {
this.innerSasTokenProvider = TokenProvider.createSharedAccessSignatureTokenProvider(signature);
}
@Override
protected CompletableFuture<SecurityToken> onGetTokenAsync(String resource, Duration validFor) {
return this.innerSasTokenProvider.GetTokenAsync(resource, duration);
}
(New issue based on point 4 in issue #55.)
Consider making SharedAccessSignatureTokenProvider allow updating the credentials. Something similar to this pseudo-code: