ALTER EXTERNAL SCHEMA - Amazon Redshift

Amazon Redshift 自 2025 年 11 月 1 日起不再支援建立新的 Python UDF。如果您想要使用 Python UDF,請在該日期之前建立 UDF。現有 Python UDF 將繼續正常運作。如需詳細資訊,請參閱部落格文章

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

ALTER EXTERNAL SCHEMA

更改目前資料庫中的現有外部結構描述。只有結構描述擁有者、超級使用者或對結構描述具有 ALTER 權限的使用者,才能進行更改。只能更改從 DATA CATALOG、KAFKA 或 MSK 建立的外部結構描述。

此結構描述的擁有者是 CREATE EXTERNAL SCHEMA 命令的發行者。若要轉移外部結構描述的所有權,請使用 ALTER SCHEMA 來變更擁有者。若要將結構描述的存取權授予其他使用者或使用者群組,請使用 GRANT 命令。

您無法使用 GRANT 或 REVOKE 命令處理外部資料表的許可。這時請改為在外部結構描述授予和撤銷許可。

如需詳細資訊,請參閱下列內容:

若要檢視外部結構描述的詳細資訊,請查詢 SVV_EXTERNAL_SCHEMAS 系統檢視。如需詳細資訊,請參閱SVV_EXTERNAL_SCHEMAS

語法

ALTER EXTERNAL SCHEMA schema_name [ IAM_ROLE [ default | 'SESSION' | 'arn:aws:iam::<account-id>:role/<role-name>' ] ] [ AUTHENTICATION [ none | iam | mtls] ] [ AUTHENTICATION_ARN 'acm-certificate-arn' | SECRET_ARN 'asm-secret-arn' ] [ URI 'Kafka bootstrap URL' ]

如果您有用於串流擷取的現有外部結構描述,而且想要實作雙向 TLS 進行身分驗證,您可以執行下列命令,以指定 mTLS 身分驗證和 ACM 中的 ACM 憑證 ARN。

ALTER EXTERNAL SCHEMA schema_name AUTHENTICATION mtls AUTHENTICATION_ARN 'arn:aws:acm:us-east-1:444455556666:certificate/certificate_ID';

或者,您可以修改 mTLS 身分驗證,並參考 Secrets Manager 中的機密 ARN。

ALTER EXTERNAL SCHEMA schema_name AUTHENTICATION mtls SECRET_ARN 'arn:aws:secretsmanager:us-east-1:012345678910:secret:myMTLSSecret';

下列範例示範如何修改 ALTER EXTERNAL SCHEMA 的 URI:

ALTER EXTERNAL SCHEMA schema_name URI 'lkc-ghidef-67890.centralus.azure.glb.confluent.cloud:9092';

下列範例示範如何修改 ALTER EXTERNAL SCHEMA 的 IAM 角色:

ALTER EXTERNAL SCHEMA schema_name IAM_ROLE 'arn:aws:iam::012345678901:role/testrole';

Parameters

IAM_ROLE【 預設 | 'SESSION' | 'arn:aws:iam::<AWSaccount-id>:role/<role-name>' 】

使用 default 關鍵字讓 Amazon Redshift 使用預設的 IAM 角色。

如果您使用聯合身分連線到 Amazon Redshift 叢集,並從使用此命令建立的外部結構描述存取資料表,請使用 'SESSION'

如需詳細資訊,請參閱 CREATE EXTERNAL SCHEMA

AUTHENTICATION

為串流擷取定義的驗證類型。具有身分驗證類型的串流擷取能夠與 Apache Kafka、Confluent Cloud 和 Amazon Managed Streaming for Apache Kafka 搭配運作。如需詳細資訊,請參閱 CREATE EXTERNAL SCHEMA

AUTHENTICATION_ARN

Amazon Redshift 使用 Apache Kafka、Confluent Cloud 或 Amazon Managed Streaming for Apache Kafka (Amazon MSK) 進行 mtls 身分驗證的AWS Certificate Manager憑證 ARN。當您選擇發出憑證時,ACM 主控台中就會提供 ARN。

SECRET_ARN

使用 建立之支援秘密的 Amazon Resource Name (ARN)AWS Secrets Manager。如需如何建立和擷取機密的 ARN 的相關資訊,請參閱《AWS Secrets Manager 使用者指南》中的使用 AWS Secrets Manager 管理機密,以及在 Amazon Redshift 中擷取機密的 Amazon Resource Name (ARN)

URI

Apache Kafka、Confluent Cloud 或 Amazon Managed Streaming for Apache Kafka (Amazon MSK) 叢集的啟動程序 URL。端點必須可從 Amazon Redshift 叢集連接 (可路由)。如需詳細資訊,請參閱 CREATE EXTERNAL SCHEMA