gh-yzou commented on code in PR #3826:
URL: https://github.com/apache/polaris/pull/3826#discussion_r2835213721


##########
spec/polaris-catalog-apis/generic-tables-api.yaml:
##########
@@ -256,6 +262,55 @@ components:
           items:
             $ref: 
'../iceberg-rest-catalog-open-api.yaml#/components/schemas/TableIdentifier'
 
+
+    StorageAccessCredential:
+      type: object
+      required:
+        - prefix
+        - config
+      properties:
+        prefix:
+          type: string
+          description: Indicates a storage location prefix where the 
credential is relevant. Clients should choose the most 
+            specific prefix (by selecting the longest prefix) if several 
credentials of the same type are available.
+        config:
+          type: object
+          description: |
+            Credential configurations for AWS S3, GCP GCS, and Azure ADLS are 
supported. The following outlines 
+            the currently supported configuration options:
+              
+            ## AWS Configurations
+              
+            The following configurations should be respected when working with 
tables stored in AWS S3

Review Comment:
   that is good point, I updated to S3 configuration to be more precise. Also 
updated other ones to contain the storage type



##########
spec/polaris-catalog-apis/generic-tables-api.yaml:
##########
@@ -256,6 +262,55 @@ components:
           items:
             $ref: 
'../iceberg-rest-catalog-open-api.yaml#/components/schemas/TableIdentifier'
 
+
+    StorageAccessCredential:
+      type: object
+      required:
+        - prefix
+        - config
+      properties:
+        prefix:
+          type: string
+          description: Indicates a storage location prefix where the 
credential is relevant. Clients should choose the most 
+            specific prefix (by selecting the longest prefix) if several 
credentials of the same type are available.
+        config:
+          type: object
+          description: |
+            Credential configurations for AWS S3, GCP GCS, and Azure ADLS are 
supported. The following outlines 
+            the currently supported configuration options:
+              
+            ## AWS Configurations
+              
+            The following configurations should be respected when working with 
tables stored in AWS S3
+              - `s3.access-key-id`: id for credentials that provide access to 
the data in S3
+              - `s3.secret-access-key`: secret for credentials that provide 
access to data in S3

Review Comment:
   I don’t think the cloud-specific configuration fields are good candidates to 
be extracted into dedicated fields. Different cloud providers rely on different 
credential structures, and they regularly introduce new authentication methods 
or storage access patterns. Keeping these settings in a general configuration 
map makes it much easier to support new configurations without requiring schema 
changes.



##########
spec/polaris-catalog-apis/generic-tables-api.yaml:
##########
@@ -256,6 +262,55 @@ components:
           items:
             $ref: 
'../iceberg-rest-catalog-open-api.yaml#/components/schemas/TableIdentifier'
 
+
+    StorageAccessCredential:
+      type: object
+      required:
+        - prefix
+        - config
+      properties:
+        prefix:
+          type: string
+          description: Indicates a storage location prefix where the 
credential is relevant. Clients should choose the most 
+            specific prefix (by selecting the longest prefix) if several 
credentials of the same type are available.
+        config:
+          type: object
+          description: |
+            Credential configurations for AWS S3, GCP GCS, and Azure ADLS are 
supported. The following outlines 
+            the currently supported configuration options:
+              
+            ## AWS Configurations
+              
+            The following configurations should be respected when working with 
tables stored in AWS S3
+              - `s3.access-key-id`: id for credentials that provide access to 
the data in S3
+              - `s3.secret-access-key`: secret for credentials that provide 
access to data in S3
+              - `s3.session-token`: if present, this value should be used for 
as the session token
+              - `s3.session-token-expires-at-ms`: the time the aws session 
token expires, in milliseconds
+            Extra properties:
+              - `s3.endpoint`: the S3 endpoint to use for requests

Review Comment:
   That is a good point, it seems like those fields are really needed by 
iceberg FILE IO today. I think for generic table, we don't necessary need this. 
I can take if off from generic for now, and if we really need those access 
specific configuration, we can have a separate discussion to see if we need to 
evolve a separate structure for those information



-- 
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]

Reply via email to