Hello everyone, I have opened a pull request (#15892) <https://github.com/apache/iceberg/pull/15892> to add support for Basic Authentication to the OpenAPI specification for the Iceberg REST Catalog.
Background & Purpose: The Iceberg RESTCatalog already supports Basic Auth in its implementation. This pull request aims to formally document that support within the project's OpenAPI specification (rest-catalog-open-api.yaml), ensuring the spec accurately reflects the available authentication mechanisms. This improves clarity for users and client implementers. Key Changes in the PR: The update adds BasicAuth: [] to the global security schemes in the OpenAPI spec, alongside the existing OAuth2 and BearerAuthschemes. A definition for the Basic Auth security scheme (type: http, scheme: basic) has also been added, consistent with OpenAPI 3.0 standards. Reference & Context: OpenAPI specification references: Bearer Authentication https://swagger.io/docs/specification/v3_0/authentication/bearer-authentication/ Basic Authentication https://swagger.io/docs/specification/v3_0/authentication/basic-authentication/ Iceberg RESTCatalog client already supports https://github.com/apache/iceberg/blob/main/core/src/main/java/org/apache/iceberg/rest/auth/BasicAuthManager.java IRC servers such as Apache Gravitino already supports this https://github.com/apache/gravitino/blob/main/server-common/src/main/java/org/apache/gravitino/server/authentication/SimpleAuthenticator.java Apache Polaris already supports this, too. https://github.com/apache/polaris/blob/main/runtime/service/src/main/java/org/apache/polaris/service/auth/internal/service/DefaultOAuth2ApiService.java#L84 Request for Feedback: While this is a straightforward documentation update aligning the spec with existing functionality, I believe it's valuable to propose this change for broader community discussion. I would appreciate your thoughts on: The approach of adding Basic Auth to the global security schemes. Any potential considerations or alternative methods for documenting this authentication method. You can view the full pull request and conversation here: https://github.com/apache/iceberg/pull/15892 Thank you for your time and feedback. Best regards, Rory
