danhuawang opened a new issue, #9713: URL: https://github.com/apache/gravitino/issues/9713
### Version main branch ### Describe what's wrong I follow doc to config Azure AD. It says `With JWKS validation, you don't need to configure defaultSignKey, serverUri, or tokenPath as the validator dynamically fetches public keys from Azure AD's JWKS endpoint.` https://gravitino.apache.org/docs/1.1.0/security/how-to-authenticate#example-azure-ad-as-oidc-provider-with-jwks-validation But if I didn't configure "serverUri", "tokenPath", the server will have IllegalArgumentException. ### Error message and/or stacktrace ``` 2026-01-14 08:29:52.223 INFO [main] [org.apache.gravitino.metrics.MetricsSystem.register(MetricsSystem.java:79)] - Register iceberg-rest-server to metrics system 2026-01-14 08:29:52.229 INFO [main] [org.apache.gravitino.iceberg.service.provider.IcebergConfigProviderFactory.create(IcebergConfigProviderFactory.java:44)] - Load Iceberg catalog provider: org.apache.gravitino.iceberg.service.provider.StaticIcebergConfigProvider. 2026-01-14 08:29:52.307 INFO [main] [org.apache.gravitino.iceberg.service.metrics.IcebergMetricsManager.loadIcebergMetricsStore(IcebergMetricsManager.java:194)] - Load Iceberg metrics store: org.apache.gravitino.iceberg.service.metrics.DummyMetricsStore. 2026-01-14 08:29:52.364 INFO [main] [org.apache.gravitino.iceberg.RESTService.serviceInit(RESTService.java:162)] - Iceberg REST service init. 2026-01-14 08:29:52.411 INFO [main] [org.apache.gravitino.GravitinoEnv.initializeFullComponents(GravitinoEnv.java:198)] - Gravitino full environment is initialized. 2026-01-14 08:29:52.437 INFO [main] [org.apache.gravitino.server.web.JettyServer.initializeWebAppServletContextHandler(JettyServer.java:309)] - Gravitino Webapp path: /tmp/GravitinoWar6032372158821220371 2026-01-14 08:29:52.447 ERROR [main] [org.apache.gravitino.server.GravitinoServer.main(GravitinoServer.java:210)] - Error while running jettyServer java.lang.IllegalArgumentException: null in gravitino.authenticator.oauth.tokenPath is invalid. The value can't be blank at org.apache.gravitino.config.ConfigEntry.lambda$checkValue$0(ConfigEntry.java:148) ~[gravitino-common-1.1.0.jar:?] at org.apache.gravitino.config.ConfigEntry.readFrom(ConfigEntry.java:310) ~[gravitino-common-1.1.0.jar:?] at org.apache.gravitino.Config.get(Config.java:120) ~[gravitino-common-1.1.0.jar:?] at org.apache.gravitino.server.authentication.OAuth2TokenAuthenticator.initialize(OAuth2TokenAuthenticator.java:53) ~[gravitino-server-common-1.1.0.jar:?] at org.apache.gravitino.server.authentication.ServerAuthenticator.initialize(ServerAuthenticator.java:53) ~[gravitino-server-common-1.1.0.jar:?] at org.apache.gravitino.server.GravitinoServer.initialize(GravitinoServer.java:104) ~[gravitino-server-1.1.0.jar:?] at org.apache.gravitino.server.GravitinoServer.main(GravitinoServer.java:206) [gravitino-server-1.1.0.jar:?] 2026-01-14 08:42:17.579 INFO [main] [org.apache.gravitino.server.GravitinoServer.main(GravitinoServer.java:200)] - Starting Gravitino Server 2026-01-14 08:42:17.669 INFO [main] [org.apache.gravitino.GravitinoEnv.initializeFullComponents(GravitinoEnv.java:193)] - Initializing Gravitino full environment... 2026-01-14 08:42:17.829 INFO [main] [org.apache.gravitino.metrics.MetricsSystem.register(MetricsSystem.java:79)] - Register jvm to metrics system 2026-01-14 08:42:17.862 INFO [main] [org.apache.gravitino.audit.AuditLogManager.init(AuditLogManager.java:47)] - Audit log is not enabled 2026-01-14 08:42:18.907 INFO [main] [org.apache.gravitino.metrics.MetricsSystem.register(MetricsSystem.java:79)] - Register gravitino-relational-store to metrics system 2026-01-14 08:42:18.963 INFO [main] [org.apache.gravitino.metrics.MethodMonitorAspect.<init>(MethodMonitorAspect.java:43)] - MethodMonitorAspect initialized. 2026-01-14 08:42:19.396 INFO [main] [org.apache.arrow.memory.BaseAllocator.<clinit>(BaseAllocator.java:58)] - Debug mode disabled. Enable with the VM option -Darrow.memory.debug.allocator=true. 2026-01-14 08:42:19.399 INFO [main] [org.apache.arrow.memory.DefaultAllocationManagerOption.getDefaultAllocationManagerFactory(DefaultAllocationManagerOption.java:97)] - allocation manager type not specified, using netty as the default type 2026-01-14 08:42:19.400 INFO [main] [org.apache.arrow.memory.CheckAllocator.reportResult(CheckAllocator.java:73)] - Using DefaultAllocationManager at memory-netty-15.0.0.jar!/org/apache/arrow/memory/DefaultAllocationManagerFactory.class 2026-01-14 08:42:19.513 INFO [main] [org.apache.gravitino.auxiliary.AuxiliaryServiceManager.registerAuxService(AuxiliaryServiceManager.java:138)] - AuxService name:iceberg-rest, config:{catalog-backend=memory, classpath=iceberg-rest-server/libs, iceberg-rest-server/conf, httpPort=9001, host=0.0.0.0, warehouse=/tmp/}, valid classpath:[/home/ubuntu/gravitino-bin/iceberg-rest-server/libs, /home/ubuntu/gravitino-bin/iceberg-rest-server/conf] 2026-01-14 08:42:19.655 INFO [main] [org.apache.gravitino.auxiliary.AuxiliaryServiceManager.registerAuxService(AuxiliaryServiceManager.java:151)] - AuxService:iceberg-rest registered successfully 2026-01-14 08:42:19.682 INFO [main] [org.eclipse.jetty.util.log.Log.initialized(Log.java:170)] - Logging initialized @3149ms to org.eclipse.jetty.util.log.Slf4jLog 2026-01-14 08:42:19.802 INFO [main] [org.apache.gravitino.metrics.MetricsSystem.register(MetricsSystem.java:79)] - Register iceberg-rest-server to metrics system 2026-01-14 08:42:19.807 INFO [main] [org.apache.gravitino.iceberg.service.provider.IcebergConfigProviderFactory.create(IcebergConfigProviderFactory.java:44)] - Load Iceberg catalog provider: org.apache.gravitino.iceberg.service.provider.StaticIcebergConfigProvider. 2026-01-14 08:42:19.872 INFO [main] [org.apache.gravitino.iceberg.service.metrics.IcebergMetricsManager.loadIcebergMetricsStore(IcebergMetricsManager.java:194)] - Load Iceberg metrics store: org.apache.gravitino.iceberg.service.metrics.DummyMetricsStore. 2026-01-14 08:42:19.940 INFO [main] [org.apache.gravitino.iceberg.RESTService.serviceInit(RESTService.java:162)] - Iceberg REST service init. 2026-01-14 08:42:19.981 INFO [main] [org.apache.gravitino.GravitinoEnv.initializeFullComponents(GravitinoEnv.java:198)] - Gravitino full environment is initialized. 2026-01-14 08:42:20.002 INFO [main] [org.apache.gravitino.server.web.JettyServer.initializeWebAppServletContextHandler(JettyServer.java:309)] - Gravitino Webapp path: /tmp/GravitinoWar8838209550239686532 2026-01-14 08:42:20.011 ERROR [main] [org.apache.gravitino.server.GravitinoServer.main(GravitinoServer.java:210)] - Error while running jettyServer java.lang.IllegalArgumentException: null in gravitino.authenticator.oauth.serverUri is invalid. The value can't be blank at org.apache.gravitino.config.ConfigEntry.lambda$checkValue$0(ConfigEntry.java:148) ~[gravitino-common-1.1.0.jar:?] at org.apache.gravitino.config.ConfigEntry.readFrom(ConfigEntry.java:310) ~[gravitino-common-1.1.0.jar:?] at org.apache.gravitino.Config.get(Config.java:120) ~[gravitino-common-1.1.0.jar:?] at org.apache.gravitino.server.authentication.OAuth2TokenAuthenticator.initialize(OAuth2TokenAuthenticator.java:56) ~[gravitino-server-common-1.1.0.jar:?] at org.apache.gravitino.server.authentication.ServerAuthenticator.initialize(ServerAuthenticator.java:53) ~[gravitino-server-common-1.1.0.jar:?] at org.apache.gravitino.server.GravitinoServer.initialize(GravitinoServer.java:104) ~[gravitino-server-1.1.0.jar:?] "../logs/gravitino-server.log" 853L, 143906B 837,8 99% ``` ### How to reproduce I follow doc to config Azure AD to login https://gravitino.apache.org/docs/1.1.0/security/how-to-authenticate#example-azure-ad-as-oidc-provider-with-jwks-validation ### Additional context _No response_ -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
