diff --git a/grpc-client-spring-boot-autoconfigure/src/main/java/net/devh/boot/grpc/client/security/CallCredentialsHelper.java b/grpc-client-spring-boot-autoconfigure/src/main/java/net/devh/boot/grpc/client/security/CallCredentialsHelper.java index f9c46446a..a32eafb74 100644 --- a/grpc-client-spring-boot-autoconfigure/src/main/java/net/devh/boot/grpc/client/security/CallCredentialsHelper.java +++ b/grpc-client-spring-boot-autoconfigure/src/main/java/net/devh/boot/grpc/client/security/CallCredentialsHelper.java @@ -340,7 +340,13 @@ private static final class DynamicSecurityHeaderCallCredentials extends CallCred @Override public void applyRequestMetadata(final RequestInfo requestInfo, final Executor appExecutor, final MetadataApplier applier) { - applier.apply(this.extraHeadersSupplier.get()); + appExecutor.execute(() -> { + try { + applier.apply(this.extraHeadersSupplier.get()); + } catch (RuntimeException e) { + applier.fail(Status.UNAUTHENTICATED.withCause(e)); + } + }); } @Override