Amazon Redshift ne prendra plus en charge la création de nouvelles fonctions Python définies par l’utilisateur à compter du 1er novembre 2025. Si vous souhaitez utiliser des fonctions Python définies par l’utilisateur, créez-les avant cette date. Les fonctions Python définies par l’utilisateur existantes continueront de fonctionner normalement. Pour plus d’informations, consultez le billet de blog
Octroi d'autorisations à Amazon Redshift Serverless
Amazon Redshift Serverless nécessite des autorisations pour accéder à d'autres services AWS. Certaines fonctionnalités d'Amazon Redshift nécessitent qu'Amazon Redshift accède à d'autres services AWS en votre nom. Pour que votre instance Amazon Redshift sans serveur agisse en votre nom, fournissez-lui des informations d'identification de sécurité. La méthode recommandée pour fournir des informations d'identification de sécurité consiste à spécifier un rôle AWS Identity and Access Management (IAM). Vous pouvez également créer un rôle IAM via la console Amazon Redshift et le définir comme rôle par défaut. Pour plus d'informations, consultez Création d'un rôle IAM par défaut pour Amazon Redshift.
Pour accéder à d'autres services AWS, créez un rôle IAM avec les autorisations appropriées. Vous devez également associer le rôle à Amazon Redshift sans serveur. En outre, spécifiez l'Amazon Resource Name (ARN) du rôle lorsque vous exécutez la commande Amazon Redshift ou spécifiez le mot clé default.
Lors de la modification de la relation de confiance pour le rôle IAM dans https://console.aws.amazon.com/iam/redshift-serverless.amazonaws.com et redshift.amazonaws.com en tant que noms de service principaux. Pour obtenir des générales sur la manière de gérer des rôles IAM en vue d'accéder à d'autres services AWS en votre nom, consultez Autoriser Amazon Redshift à accéder aux services AWS en votre nom.
Création d'un rôle IAM par défaut pour Amazon Redshift
Lorsque vous créez des rôles IAM via la console Amazon Redshift, Amazon Redshift crée par programmation les rôles dans votre Compte AWS. Amazon Redshift leur attache également automatiquement des politiques gérées par AWS existantes. Cette approche signifie que vous pouvez rester dans la console Amazon Redshift et que vous n'avez pas besoin de passer à la console IAM pour créer des rôles.
Le rôle IAM que vous créez via la console pour votre cluster a la politique gérée par AmazonRedshiftAllCommandsFullAccess attachée automatiquement. Ce rôle IAM permet à Amazon Redshift de copier, de décharger, d'interroger et d'analyser des données pour les ressources AWS de votre compte IAM. Les commandes associées incluent COPY, UNLOAD, CREATE EXTERNAL FUNCTION, CREATE EXTERNAL TABLE, CREATE EXTERNAL SCHEMA, CREATE MODEL et CREATE LIBRARY. Pour plus d'informations sur le mode de création d'un rôle IAM par défaut pour Amazon Redshift, consultez Création d'un rôle IAM par défaut pour Amazon Redshift.
Pour commencer à créer un rôle IAM par défaut pour Amazon Redshift, ouvrez la AWS Management Console, choisissez la console Amazon Redshift, puis choisissez Amazon Redshift sans serveur) dans le menu. Depuis le tableau de bord sans serveur, vous pouvez créer un nouveau groupe de travail. Les étapes de création vous guident dans la sélection d’un rôle IAM ou la configuration d’un nouveau rôle IAM.
Si vous disposez d’un groupe de travail Amazon Redshift sans serveur existant et que vous souhaitez configurer des rôles IAM pour celui-ci, ouvrez la AWS Management Console. Choisissez la console Amazon Redshift, puis choisissez Redshift sans serveur). Sur la console Amazon Redshift sans serveur, choisissez Configuration d’espace de noms pour un groupe de travail existant. Sous Sécurité et chiffrement, vous pouvez modifier les autorisations.
Attribution de rôles IAM à un espace de noms
Chaque rôle IAM est une identité AWS avec des politiques d'autorisations qui déterminent les actions que chaque rôle peut effectuer dans AWS. Le rôle est destiné à être endossé par toute personne qui en a besoin. En outre, chaque espace de noms représente une collection d'objets, tels que des tables et des schémas, et d'utilisateurs. Lorsque vous utilisez Amazon Redshift sans serveur, vous pouvez associer plusieurs rôles IAM à votre espace de noms. Il est ainsi plus facile de structurer vos autorisations de manière appropriée pour une collection d'objets de base de données, afin que les rôles puissent effectuer des actions sur les données internes et externes. Par exemple, pour que vous puissiez exécuter une commande COPY dans une base de données Amazon Redshift pour récupérer des données d'Amazon S3 et remplir une table Redshift.
Vous pouvez associer plusieurs rôles à un espace de noms à l'aide de la console, comme décrit précédemment dans cette section. Vous pouvez également utiliser la commande API CreateNamespace, ou la commande CLI create-namespace. Avec l'API ou la commande CLI, vous pouvez attribuer des rôles IAM à l'espace de noms en remplissant IAMRoles avec un ou plusieurs rôles. Plus précisément, vous ajoutez des ARN pour des rôles spécifiques à la collection.
Gestion des rôles IAM associés à l'espace de noms
Sur la AWS Management Console, vous pouvez gérer les politiques d'autorisations pour les rôles dans AWS Identity and Access Management. Vous pouvez gérer les rôles IAM pour l'espace de noms, en utilisant les paramètres disponibles sous Namespace configuration (Configuration de l'espace de noms). Pour obtenir plus d'informations sur les espaces de noms et leur utilisation dans Amazon Redshift sans serveur, consultez Groupe de travail et espace de noms.