Overview
Cet article fournit des instructions pour intégrer manuellement des comptes AWS ou des organisations AWS à Netskope DSPM (également connu sous le nom de Netskope One DSPM). Cela permet la découverte, l'analyse et la classification de vos magasins de données.
- Intégration d'AWS via CloudFormation
- Intégration d'AWS via Terraform
Résumé des fonctionnalités
When you configure an Individual AWS Account or an AWS Organization in Netskope DSPM, you can enable several capabilities on the Capabilities tab. The following table summarizes what each toggle does and where it applies.
| Basculer la description | Details |
|---|---|
| Auto-Discover New données Stores | Découvrez automatiquement les magasins de données pris en charge (par exemple, S3, RDS, Redshift, volumes EC2, DynamoDB) dans le compte ou l'organisation intégré(e). |
| Analyse d'EBS/EFS et découverte automatique des magasins de données non gérés | Permet à Netskope DSPM d'analyser les volumes EBS et les systèmes de fichiers EFS, et de découvrir automatiquement les magasins de données non gérés en créant un environnement d'analyse temporaire et isolé. |
| Ingest Tags | Permet à Netskope DSPM d'ingérer des étiquettes de ressources AWS afin de fournir un contexte supplémentaire et d'améliorer la classification. |
| Autoriser l'accès aux clichés du magasin de données | Permet à Netskope DSPM de créer et d'accéder à des instantanés temporaires des magasins de données pris en charge (par exemple, RDS), y compris des instantanés cryptés KMS, pour une analyse approfondie. |
| Découverte automatique des comptes New (Org) | S'applique uniquement aux organisations AWS. Découvrez automatiquement les magasins New données lorsqu'ils sont créés au sein de l'organisation AWS. Non applicable aux comptes individuels. |
| Enable AWS Inventory | Activez cette option pour permettre à DSPM d’utiliser la fonction native AWS S3 Inventory pour les magasins de données S3. Lorsqu’il est activé, le DSPM stocke les métadonnées du compartiment dans un bac d’inventaire dédié au lieu d’effectuer des appels API individuels pour récupérer les métadonnées des fichiers. Cela réduit considérablement les coûts d’API pour les grands buckets. Note: Ce bouton est désactivé par défaut car il nécessite des permissions AWS supplémentaires. Lorsqu’elle est activée au niveau de l’infrastructure, l’option Utiliser l’inventaire S3 devient disponible lors de la connexion de différents magasins de données S3. Pour plus de détails, voir Connecter AWS S3 au DSPM. |
Instructions
Choisissez le site workflow qui correspond à votre objectif. Les instructions relatives à l'ouverture d'un compte individuel et d'une organisation sont distinctes et autonomes.
Suivez cette page workflow pour ouvrir un seul compte AWS.
Étape 1 : Démarrer dans Netskope DSPM
Vous devez démarrer dans la console Netskope DSPM pour générer un ExternalId unique pour votre compte AWS.
- Allez sur Administration > Infrastructure Connections.
- Cliquez sur Add Infrastructure > Select AWS > Add Account.
- Select l'onglet Capacités > Activez les cases à cocher correspondant aux fonctions que vous envisagez de configurer (par exemple, "Ingest Tags", "Auto-Discover New données Stores").
- Select Manually Configured > Cliquez sur Next.
- Remplissez les champs Account Name > Cliquez sur Next.
- Copy the External ID.
- Gardez cet onglet de navigateur ouvert.
Étape 2 : Créer le rôle IAM dans AWS
-
Dans un onglet du navigateur New, connectez-vous à la console AWS IAM.
-
Allez à Roles et cliquez sur Create role.
-
Select trusted entity > Choisis Custom trust policy.
-
Collez le JSON suivant.
- Note: In the
sts:ExternalIdfield, paste the External ID you copied from Netskope in Step 1.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAssumeRoleForNetskope", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::842940822891:root", "arn:aws:iam::946157925481:root" ] }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "PASTE_YOUR_EXTERNAL_ID_HERE" } } }, { "Sid": "AllowTagSessionForNetskope", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::842940822891:root", "arn:aws:iam::946157925481:root" ] }, "Action": "sts:TagSession" } ] } - Note: In the
-
Cliquez sur Next.
-
Donnez un nom au rôle (par exemple,
NetskopeDSPMRole) > Cliquez sur Create role. -
Dans la liste des rôles, cliquez sur votre New rôle et copiez son Role ARN.
Étape 3 (facultative) : Créez la politique IAM personnalisée
You only need to complete this step if you enabled “Ingest Tags”, “Scan EBS/EFS and Auto-Discover Unmanaged Data Stores”, or “Authorize Data Store Snapshots Access” in Step 1. If you only enabled “Auto-Discover New Data Stores”, you can skip this step and proceed to Step 4.
-
Dans la console AWS IAM, allez sur l'onglet Policies > Create policy > JSON .
-
Collez le wrapper JSON suivant.
{ "Version": "2012-10-17", "Statement": [ ] } -
Copiez uniquement les blocs JSON pour les fonctionnalités que vous avez activées à l'étape 1 et collez-les dans le tableau vide
Statement: [].Feature 1: Ingest TagsFonctionnalité 2 : Découverte automatique de New données StoresFonctionnalité 3 : Analyse d'EBS/EFS et découverte automatique des magasins de données non gérésFonctionnalité 4 : autoriser l'accès aux clichés du magasin de données{ "Sid": "TagGetResources", "Effect": "Allow", "Action": [ "tag:GetResources" ], "Resource": "*" }{ "Sid": "EFSReadAndMount", "Effect": "Allow", "Action": [ "elasticfilesystem:DescribeBackupPolicy", "elasticfilesystem:DescribeMountTargets", "elasticfilesystem:DescribeTags", "elasticfilesystem:DescribeReplicationConfigurations", "elasticfilesystem:ListTagsForResource", "elasticfilesystem:DescribeLifecycleConfiguration", "elasticfilesystem:ClientMount", "elasticfilesystem:DescribeFileSystemPolicy", "elasticfilesystem:DescribeAccessPoints", "elasticfilesystem:DescribeFileSystems", "elasticfilesystem:DescribeMountTargetSecurityGroups" ], "Resource": "*" }, { "Sid": "FSXRead", "Effect": "Allow", "Action": [ "fsx:DescribeFileSystems", "fsx:DescribeStorageVirtualMachines" ], "Resource": "*" }, { "Sid": "AllowRedshiftGetCredentials", "Effect": "Allow", "Action": [ "redshift:GetClusterCredentials" ], "Resource": "*" }, { "Sid": "DSPMRestrictedAthenaAndGlueAccess", "Effect": "Allow", "Action": [ "athena:ListDataCatalogs", "athena:GetDataCatalog", "athena:ListDatabases", "athena:GetDatabase", "athena:ListTableMetadata", "athena:GetTableMetadata", "athena:StartQueryExecution", "athena:GetQueryExecution", "athena:GetQueryResults", "athena:GetQueryResultsStream", "athena:BatchGetQueryExecution", "athena:CancelQueryExecution", "athena:ListQueryExecutions", "athena:ListWorkGroups", "athena:GetWorkGroup", "athena:CreatePreparedStatement", "athena:GetPreparedStatement", "athena:ListPreparedStatements", "athena:UpdatePreparedStatement", "athena:DeletePreparedStatement", "athena:BatchGetPreparedStatement", "athena:GetNamedQuery", "athena:ListNamedQueries", "athena:BatchGetNamedQuery", "athena:CreateWorkGroup", "athena:UpdateWorkGroup", "athena:TagResource", "athena:UntagResource", "glue:GetDatabase", "glue:GetDatabases", "glue:GetTable", "glue:GetTables", "glue:GetPartition", "glue:GetPartitions", "glue:BatchGetPartition", "glue:GetTags", "glue:SearchTables", "lakeformation:GetDataAccess", "lakeformation:ListPermissions", "lakeformation:ListResources", "s3:GetObject", "s3:ListBucket", "s3:PutObject", "s3:AbortMultipartUpload", "s3:ListMultipartUploadParts", "s3:GetBucketLocation", "s3:ListAllMyBuckets", "s3:GetEncryptionConfiguration" ], "Resource": "*" }{ "Sid": "ScanEnvironmentCreation", "Effect": "Allow", "Action": [ "ec2:CreateVpc", "ec2:CreateSecurityGroup", "ec2:CreateSubnet", "ec2:CreateSnapshot", "ec2:CreateVolume", "ec2:CreateInternetGateway" ], "Resource": "*", "Condition": { "StringEqualsIfExists": { "aws:RequestTag/Vendor": "Netskope", "aws:RequestTag/Product": "DSPM" } } }, { "Sid": "RestrictedEC2InstanceLaunching", "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": "*", "Condition": { "StringEqualsIfExists": { "aws:RequestTag/Vendor": "Netskope", "aws:RequestTag/Product": "DSPM" }, "StringLikeIfExists": { "ec2:InstanceType": [ "t3.*", "m5.*" ] } } }, { "Sid": "NetworkConnectivityResourceCreation", "Effect": "Allow", "Action": [ "ec2:CreateRoute", "ec2:ModifySubnetAttribute" ], "Resource": "*" }, { "Sid": "EC2NetworkAndSGManagement", "Effect": "Allow", "Action": [ "ec2:AttachInternetGateway", "ec2:ModifyVpcAttribute", "ec2:AuthorizeSecurityGroupIngress", "ec2:AuthorizeSecurityGroupEgress" ], "Resource": "*", "Condition": { "StringEquals": { "ec2:ResourceTag/Vendor": "Netskope", "ec2:ResourceTag/Product": "DSPM" } } }, { "Sid": "MandatoryResourceTagging", "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": "*", "Condition": { "StringEquals": { "ec2:CreateAction": [ "CreateVpc", "CreateSecurityGroup", "CreateSubnet", "CreateSnapshot", "CreateVolume", "RunInstances", "CreateRoute", "CreateInternetGateway" ] } } }, { "Sid": "EC2DeleteDSPMResources", "Effect": "Allow", "Action": [ "ec2:DeleteSecurityGroup", "ec2:DeleteSubnet", "ec2:DetachInternetGateway", "ec2:DeleteInternetGateway", "ec2:DeleteVpc", "ec2:DeleteVolume", "ec2:DeleteSnapshot", "ec2:TerminateInstances" ], "Resource": "*", "Condition": { "StringEquals": { "ec2:ResourceTag/Vendor": "Netskope", "ec2:ResourceTag/Product": "DSPM" } } }, { "Sid": "EC2DeleteRoute", "Effect": "Allow", "Action": [ "ec2:DeleteRoute" ], "Resource": "*" }Cette fonctionnalité requiert également les 7 autorisations de la fonctionnalité 3 (Magasins de données non gérés).
In thePassRoleForRDSRestoreOperationsstatement below, if you used a different role name in Step 2, replaceNetskopeDSPMRolewith your custom role name.{ "Sid": "RDSDescribeDatabasesAndSnapshots", "Effect": "Allow", "Action": [ "rds:DescribeDBClusters", "rds:DescribeDBSnapshots", "rds:DescribeDBClusterSnapshots", "rds:ListTagsForResource", "rds:DescribeEventSubscriptions", "rds:DescribeDBSubnetGroups", "rds:DescribeEvents", "rds:DescribeReservedDBInstances", "rds:DescribeDBEngineVersions", "rds:DescribeDBInstanceAutomatedBackups", "rds:DescribeDBInstances" ], "Resource": "*" }, { "Sid": "AllowRDSRestoreFromSnapshot", "Effect": "Allow", "Action": [ "rds:CreateDBSnapshot", "rds:CreateDBClusterSnapshot", "rds:RestoreDBInstanceFromDBSnapshot", "rds:RestoreDBClusterFromSnapshot", "rds:CreateDBSubnetGroup" ], "Resource": "*", "Condition": { "StringEqualsIfExists": { "aws:RequestTag/Vendor": "Netskope", "aws:RequestTag/Product": "DSPM" } } }, { "Sid": "AllowAddingTagsToRDSResources", "Effect": "Allow", "Action": [ "rds:AddTagsToResource" ], "Resource": "*" }, { "Sid": "RDSModifyTemporaryResources", "Effect": "Allow", "Action": [ "rds:ModifyDBInstance" ], "Resource": [ "arn:aws:rds:*:*:db:dasera-scan-temp-*", "arn:aws:rds:*:*:db:netskope-dspm-scan-temp-*" ] }, { "Sid": "RDSDeleteTaggedTemporaryResources", "Effect": "Allow", "Action": [ "rds:DeleteDBInstance" ], "Resource": "*", "Condition": { "StringEquals": { "rds:db-tag/Vendor": "Netskope", "rds:db-tag/Product": "DSPM" } } }, { "Sid": "KMSAccessForEncryptedSnapshots", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:DescribeKey", "kms:CreateGrant" ], "Resource": "arn:aws:kms:*:*:key/*", "Condition": { "StringEquals": { "kms:ViaService": "rds.amazonaws.com" } } }, { "Sid": "PassRoleForRDSRestoreOperations", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::<ACCOUNT_ID>:role/<ROLE_NAME>", "Condition": { "StringEquals": { "iam:PassedToService": "rds.amazonaws.com" } } } -
Cliquez sur Next.
-
Donnez un nom à la police (par exemple,
NetskopeDSPMCustomPolicy) et cliquez sur Create policy.
Step 4: Attach Policies to the Role
- Retournez sur votre site
NetskopeDSPMRoledans la console AWS. - On the Permissions tab, click Add permissions > Attach policies.
- Find and attach the AWS-managed policy:
IAMReadOnlyAccess: Allows DSPM to map which IAM users and roles have access to your sensitive data stores, providing a complete picture of your data access posture.
- (If you created an Optional Custom Policy in the previous step) Trouvez et attachez
NetskopeDSPMCustomPolicy. - (If you enabled the feature “Auto-Discover New Data Stores”) Attachez ces cinq politiques gérées par AWS :
AmazonS3ReadOnlyAccess: Allows DSPM to discover and read S3 buckets to assess their security and classify the data inside.AmazonRedshiftReadOnlyAccess: Allows DSPM to discover and classify data within Amazon Redshift clusters.AmazonRDSReadOnlyAccess: Allows DSPM to discover and inventory Amazon RDS database instances.AmazonEC2ReadOnlyAccess: Allows DSPM to discover EC2 instances and attached EBS volumes. This is required for detecting unmanaged data stores on those volumes.AmazonDynamoDBReadOnlyAccess: Allows DSPM to discover and classify data within Amazon DynamoDB tables.- Note for Advanced Users (Least-Privilege):
Ces 5 politiques sont listées ensemble par souci de simplicité. Pour une configuration de moindre privilège plus stricte, il vous suffit d'associer les politiques des services AWS que vous utilisez activement. Par exemple, si votre environnement n'utilise pas Amazon S3, vous pouvez omettre la politiqueAmazonS3ReadOnlyAccess.
- Note for Advanced Users (Least-Privilege):
Étape 5 : Terminer la connexion dans Netskope DSPM
- Retournez à l'onglet du navigateur Netskope DSPM.
- Sur l'écran Review, collez le Role ARN que vous avez copié.
- Cliquez sur Save.
Suivez cette page workflow pour intégrer une organisation AWS entière ou des OU spécifiques.
Étape 1 : Démarrer dans Netskope DSPM
Vous devez démarrer dans la console Netskope DSPM pour générer un ExternalId unique pour votre compte AWS.
- Allez sur Administration > Infrastructure Connections.
- Cliquez sur l’onglet AWS > Add Infrastructure > Add Organization.
- Select l'onglet Capacités > Activez les boutons de basculement pour les fonctionnalités que vous envisagez de configurer.
- Cliquez Next. Select Manually Configured.
- Remplissez les Organization Name.
- Cliquez sur Next pour accéder à l'écran Review.
- Copy the External ID.
- Gardez cet onglet de navigateur ouvert.
Étape 2 : Créer le rôle IAM dans AWS
-
Dans un onglet du navigateur New, connectez-vous à la console AWS IAM.
-
Allez à Roles et cliquez sur Create role.
-
Select trusted entity > Choisis Custom trust policy.
-
Collez le JSON suivant.
- In the
sts:ExternalIdfield, paste the External ID you copied from Netskope Step 1.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAssumeRoleForNetskope", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::842940822891:root", "arn:aws:iam::946157925481:root" ] }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "PASTE_YOUR_EXTERNAL_ID_HERE" } } }, { "Sid": "AllowTagSessionForNetskope", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::842940822891:root", "arn:aws:iam::946157925481:root" ] }, "Action": "sts:TagSession" } ] } - In the
-
Cliquez sur Next.
-
Donnez un nom au rôle (par exemple,
NetskopeDSPMOrgRole) > Cliquez sur Create role. -
Dans la liste des rôles, cliquez sur votre New rôle et copiez son Role ARN.
Étape 3 (facultative) : Créez la politique IAM personnalisée
-
Dans la console AWS IAM, allez sur l'onglet Policies > Create policy > JSON .
-
Collez le wrapper JSON suivant.
{ "Version": "2012-10-17", "Statement": [ ] } -
Copiez uniquement les blocs JSON pour les fonctionnalités que vous avez activées à l'étape 1 (par exemple, Ingest Tags, Unmanaged données Stores, etc.) et collez-les dans le tableau vide
Statement: [].Feature 1: Ingest TagsFonctionnalité 2 : Découverte automatique de New données StoresFonctionnalité 3 : Analyse d'EBS/EFS et découverte automatique des magasins de données non gérésFonctionnalité 4 : autoriser l'accès aux clichés du magasin de données{ "Sid": "TagGetResources", "Effect": "Allow", "Action": [ "tag:GetResources" ], "Resource": "*" }{ "Sid": "EFSReadAndMount", "Effect": "Allow", "Action": [ "elasticfilesystem:DescribeBackupPolicy", "elasticfilesystem:DescribeMountTargets", "elasticfilesystem:DescribeTags", "elasticfilesystem:DescribeReplicationConfigurations", "elasticfilesystem:ListTagsForResource", "elasticfilesystem:DescribeLifecycleConfiguration", "elasticfilesystem:ClientMount", "elasticfilesystem:DescribeFileSystemPolicy", "elasticfilesystem:DescribeAccessPoints", "elasticfilesystem:DescribeFileSystems", "elasticfilesystem:DescribeMountTargetSecurityGroups" ], "Resource": "*" }, { "Sid": "FSXRead", "Effect": "Allow", "Action": [ "fsx:DescribeFileSystems", "fsx:DescribeStorageVirtualMachines" ], "Resource": "*" }, { "Sid": "AllowRedshiftGetCredentials", "Effect": "Allow", "Action": [ "redshift:GetClusterCredentials" ], "Resource": "*" }, { "Sid": "DSPMRestrictedAthenaAndGlueAccess", "Effect": "Allow", "Action": [ "athena:ListDataCatalogs", "athena:GetDataCatalog", "athena:ListDatabases", "athena:GetDatabase", "athena:ListTableMetadata", "athena:GetTableMetadata", "athena:StartQueryExecution", "athena:GetQueryExecution", "athena:GetQueryResults", "athena:GetQueryResultsStream", "athena:BatchGetQueryExecution", "athena:CancelQueryExecution", "athena:ListQueryExecutions", "athena:ListWorkGroups", "athena:GetWorkGroup", "athena:CreatePreparedStatement", "athena:GetPreparedStatement", "athena:ListPreparedStatements", "athena:UpdatePreparedStatement", "athena:DeletePreparedStatement", "athena:BatchGetPreparedStatement", "athena:GetNamedQuery", "athena:ListNamedQueries", "athena:BatchGetNamedQuery", "athena:CreateWorkGroup", "athena:UpdateWorkGroup", "athena:TagResource", "athena:UntagResource", "glue:GetDatabase", "glue:GetDatabases", "glue:GetTable", "glue:GetTables", "glue:GetPartition", "glue:GetPartitions", "glue:BatchGetPartition", "glue:GetTags", "glue:SearchTables", "lakeformation:GetDataAccess", "lakeformation:ListPermissions", "lakeformation:ListResources", "s3:GetObject", "s3:ListBucket", "s3:PutObject", "s3:AbortMultipartUpload", "s3:ListMultipartUploadParts", "s3:GetBucketLocation", "s3:ListAllMyBuckets", "s3:GetEncryptionConfiguration" ], "Resource": "*" }{ "Sid": "ScanEnvironmentCreation", "Effect": "Allow", "Action": [ "ec2:CreateVpc", "ec2:CreateSecurityGroup", "ec2:CreateSubnet", "ec2:CreateSnapshot", "ec2:CreateVolume", "ec2:CreateInternetGateway" ], "Resource": "*", "Condition": { "StringEqualsIfExists": { "aws:RequestTag/Vendor": "Netskope", "aws:RequestTag/Product": "DSPM" } } }, { "Sid": "RestrictedEC2InstanceLaunching", "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": "*", "Condition": { "StringEqualsIfExists": { "aws:RequestTag/Vendor": "Netskope", "aws:RequestTag/Product": "DSPM" }, "StringLikeIfExists": { "ec2:InstanceType": [ "t3.*", "m5.*" ] } } }, { "Sid": "NetworkConnectivityResourceCreation", "Effect": "Allow", "Action": [ "ec2:CreateRoute", "ec2:ModifySubnetAttribute" ], "Resource": "*" }, { "Sid": "EC2NetworkAndSGManagement", "Effect": "Allow", "Action": [ "ec2:AttachInternetGateway", "ec2:ModifyVpcAttribute", "ec2:AuthorizeSecurityGroupIngress", "ec2:AuthorizeSecurityGroupEgress" ], "Resource": "*", "Condition": { "StringEquals": { "ec2:ResourceTag/Vendor": "Netskope", "ec2:ResourceTag/Product": "DSPM" } } }, { "Sid": "MandatoryResourceTagging", "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": "*", "Condition": { "StringEquals": { "ec2:CreateAction": [ "CreateVpc", "CreateSecurityGroup", "CreateSubnet", "CreateSnapshot", "CreateVolume", "RunInstances", "CreateRoute", "CreateInternetGateway" ] } } }, { "Sid": "EC2DeleteDSPMResources", "Effect": "Allow", "Action": [ "ec2:DeleteSecurityGroup", "ec2:DeleteSubnet", "ec2:DetachInternetGateway", "ec2:DeleteInternetGateway", "ec2:DeleteVpc", "ec2:DeleteVolume", "ec2:DeleteSnapshot", "ec2:TerminateInstances" ], "Resource": "*", "Condition": { "StringEquals": { "ec2:ResourceTag/Vendor": "Netskope", "ec2:ResourceTag/Product": "DSPM" } } }, { "Sid": "EC2DeleteRoute", "Effect": "Allow", "Action": [ "ec2:DeleteRoute" ], "Resource": "*" }Cette fonctionnalité requiert également les 7 autorisations de la fonctionnalité 3 (Magasins de données non gérés).
DansPassRoleForRDSRestoreOperations, si vous avez utilisé un nom de rôle différent à l'étape 2, remplacezNetskopeDSPMRolepar votre nom de rôle personnalisé.{ "Sid": "RDSDescribeDatabasesAndSnapshots", "Effect": "Allow", "Action": [ "rds:DescribeDBClusters", "rds:DescribeDBSnapshots", "rds:DescribeDBClusterSnapshots", "rds:ListTagsForResource", "rds:DescribeEventSubscriptions", "rds:DescribeDBSubnetGroups", "rds:DescribeEvents", "rds:DescribeReservedDBInstances", "rds:DescribeDBEngineVersions", "rds:DescribeDBInstanceAutomatedBackups", "rds:DescribeDBInstances" ], "Resource": "*" }, { "Sid": "AllowRDSRestoreFromSnapshot", "Effect": "Allow", "Action": [ "rds:CreateDBSnapshot", "rds:CreateDBClusterSnapshot", "rds:RestoreDBInstanceFromDBSnapshot", "rds:RestoreDBClusterFromSnapshot", "rds:CreateDBSubnetGroup" ], "Resource": "*", "Condition": { "StringEqualsIfExists": { "aws:RequestTag/Vendor": "Netskope", "aws:RequestTag/Product": "DSPM" } } }, { "Sid": "AllowAddingTagsToRDSResources", "Effect": "Allow", "Action": [ "rds:AddTagsToResource" ], "Resource": "*" }, { "Sid": "RDSModifyTemporaryResources", "Effect": "Allow", "Action": [ "rds:ModifyDBInstance" ], "Resource": [ "arn:aws:rds:*:*:db:dasera-scan-temp-*", "arn:aws:rds:*:*:db:netskope-dspm-scan-temp-*" ] }, { "Sid": "RDSDeleteTaggedTemporaryResources", "Effect": "Allow", "Action": [ "rds:DeleteDBInstance" ], "Resource": "*", "Condition": { "StringEquals": { "rds:db-tag/Vendor": "Netskope", "rds:db-tag/Product": "DSPM" } } }, { "Sid": "KMSAccessForEncryptedSnapshots", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:DescribeKey", "kms:CreateGrant" ], "Resource": "arn:aws:kms:*:*:key/*", "Condition": { "StringEquals": { "kms:ViaService": "rds.amazonaws.com" } } }, { "Sid": "PassRoleForRDSRestoreOperations", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::<ACCOUNT_ID>:role/<ROLE_NAME>", "Condition": { "StringEquals": { "iam:PassedToService": "rds.amazonaws.com" } } } -
Cliquez sur Next.
-
Donnez un nom à la politique (par exemple,
NetskopeDSPMCustomPolicy) > Cliquez sur Create policy.
Step 4: Attach Policies to the Role
-
Retournez sur votre site
NetskopeDSPMOrgRoledans la console AWS. -
On the Permissions tab, click Add permissions > Attach policies.
-
Find and attach the following AWS-managed policies:
IAMReadOnlyAccess: Allows DSPM to map which IAM users and roles have access to your sensitive data stores, providing a complete picture of your data access posture.AWSOrganizationsReadOnlyAccess: Required for discovering accounts within your AWS Organization.
-
(If you created an “Optional Custom Policy” in the previous step) Trouvez et attachez
NetskopeDSPMCustomPolicy. -
(If you enabled “Auto-Discover New Data Stores”) Attachez ces cinq politiques gérées par AWS :
AmazonS3ReadOnlyAccess: Allows DSPM to discover and read S3 buckets to assess their security and classify the data inside.AmazonRedshiftReadOnlyAccess: Allows DSPM to discover and classify data within Amazon Redshift clusters.AmazonRDSReadOnlyAccess: Allows DSPM to discover and inventory Amazon RDS database instances.AmazonEC2ReadOnlyAccess: Allows DSPM to discover EC2 instances and attached EBS volumes. This is required for detecting unmanaged data stores on those volumes.AmazonDynamoDBReadOnlyAccess: Allows DSPM to discover and classify data within Amazon DynamoDB tables.- Note for Advanced Users (Least-Privilege):
Ces 5 politiques sont listées ensemble par souci de simplicité. Pour une configuration de moindre privilège plus stricte, il vous suffit d'associer les politiques des services AWS que vous utilisez activement.
- Note for Advanced Users (Least-Privilege):
Étape 5 : Terminer la connexion dans Netskope DSPM
- Retournez à l'onglet du navigateur Netskope DSPM.
- Sur l'écran Review, collez le Role ARN que vous avez copié.
- Cliquez sur Save.
Dépannage
- Error: "Cannot ingest AWS tags due to missing permissions" (Impossible d'ingérer les étiquettes AWS en raison d'autorisations manquantes).
- Cause: La politique de l’IAM manque de l’autorisation
tag:GetResources. - Fix: Modifie votre
NetskopeDSPMCustomPolicydans AWS et ajoute l’instruction JSON pour la fonctionnalité Ingest Tags .
- Cause: La politique de l’IAM manque de l’autorisation
- Error: "Netskope a rencontré une erreur lors de l'analyse... Permissions AWS manquantes : ec2:DeleteSnapshot".
- Cause: Le rôle n'a pas d'autorisations pour les magasins de données non gérés.
- Fix: Modifiez votre stratégie IAM personnalisée et ajoutez les 7 instructions JSON pour la fonctionnalité Scan EBS/EFS and Auto-Discover Unmanaged Data Stores .
- Error: "Le décryptage du KMS a échoué pour l'instantané RDS".
- Cause: Le rôle ne dispose pas des autorisations KMS requises pour les instantanés du magasin de données.
- Fix: Modifiez votre politique IAM personnalisée et ajoutez les 8 instructions JSON pour la fonctionnalité Authorize Data Store Snapshots Access .

