diff --git a/airflow/providers/amazon/aws/operators/redshift_cluster.py b/airflow/providers/amazon/aws/operators/redshift_cluster.py index 107a2cc5d66d0..f31b7db09ad77 100644 --- a/airflow/providers/amazon/aws/operators/redshift_cluster.py +++ b/airflow/providers/amazon/aws/operators/redshift_cluster.py @@ -256,8 +256,6 @@ def execute(self, context: Context): params["ClusterVersion"] = self.cluster_version if self.allow_version_upgrade: params["AllowVersionUpgrade"] = self.allow_version_upgrade - if self.publicly_accessible: - params["PubliclyAccessible"] = self.publicly_accessible if self.encrypted: params["Encrypted"] = self.encrypted if self.hsm_client_certificate_identifier: @@ -287,6 +285,10 @@ def execute(self, context: Context): if self.default_iam_role_arn: params["DefaultIamRoleArn"] = self.default_iam_role_arn + # PubliclyAccessible is True by default on Redshift side, hence, we should always set it regardless + # of its value + params["PubliclyAccessible"] = self.publicly_accessible + cluster = redshift_hook.create_cluster( self.cluster_identifier, self.node_type,