ScopedDCManager - Dans le champ d’application

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 4 minutes de lecture
  • L’API ScopedDCManager vous permet de regrouper des données par type.

    À l’aide de cette API, vous pouvez :
    • Affectez des classifications de données aux entrées de dictionnaire existantes.
    • Recherchez les classifications de données pour des entrées de dictionnaire spécifiques.
    • Supprimez toutes les classifications de données associées à des entrées de dictionnaire spécifiques.
    • Récupère une liste de toutes les classifications de données disponibles dans le domaine actuel.

    Cette API nécessite le module d’extension Data Classification [com.glide.data_classification].

    Pour plus d’informations, consultez Classification des données.

    ScopedDCManager – classify(String dictEntries, String dataClasses)

    Affecte des classifications de données prédéfinies ou définies par l’utilisateur aux entrées de dictionnaire existantes.

    Nécessite un rôle administrateur ou data_classification_admin.

    Tableau 1. Paramètres
    Nom Type Description
    Entrées de dicte Chaîne La sys_ids des enregistrements que vous souhaitez classer. Les sys_ids proviennent de la table Dictionnaire [sys_dictionary]. Saisie sous la forme d’une liste séparée par des virgules entourée d’une chaîne.
    Classes de données Chaîne Le sys_ids des classifications de données que vous souhaitez affecter. Les sys_ids proviennent de la table de classification des données [data_classification]. Saisie sous la forme d’une liste séparée par des virgules entourée d’une chaîne.
    Tableau 2. Renvoie
    Type Description
    Chaîne Message décrivant le résultat de l’opération.

    Cet exemple trouve des enregistrements contenant des numéros de sécurité sociale et les classe comme confidentiels.

    var dcm = new global.ScopedDCManager();
    var confidentialClass = {};
    var ssnFields = [];
    var dataClasses = JSON.parse(dcm.getAllDataClasses());
    
    // Get the Confidential data class record
    dataClasses.forEach(function (dataClass) {
      if (dataClass.name == "Confidential")
        confidentialClass = dataClass;
    });
    
    // Find the fields that seem to be strong social security numbers
    var dictionaryGR = new GlideRecord("sys_dictionary");
    dictionaryGR.addQuery("element", "ssn").addOrCondition("element", "social_security_number");
    dictionaryGR.query();
    while (dictionaryGR.next())
      ssnFields.push(dictionaryGR.getUniqueValue());
    
    // Classify any found entries as confidential
    if (ssnFields.length > 0)
      dcm.classify(ssnFields.join(), confidentialClass.sys_id);
    
    Sortie :
    "Successfully stored the data classification configurations"

    ScopedDCManager : clearClassification(String dictEntries)

    Supprime toutes les classifications de données pour les entrées de dictionnaire spécifiées.

    Nécessite un rôle administrateur ou data_classification_admin.

    Tableau 3. Paramètres
    Nom Type Description
    Entrées de dicte Chaîne La sys_ids des enregistrements dont vous souhaitez supprimer les classifications. Les sys_ids proviennent de la table Dictionnaire [sys_dictionary]. Saisie sous la forme d’une liste séparée par des virgules entourée d’une chaîne.
    Tableau 4. Renvoie
    Type Description
    Chaîne Message décrivant le résultat de l’opération.

    Cet exemple supprime la classification des données d’une entrée de dictionnaire.

    var dcm = new global.ScopedDCManager();
    gs.info(dcm.clearClassification("445de0a6dba30300efc57416bf9619b0"));
    

    Sortie :

    "Classifications removed for the specified dictionary entries"

    ScopedDCManager : getAllDataClasses()

    Renvoie une liste de toutes les classifications de données disponibles dans le domaine actuel.

    Nécessite un rôle administrateur, data_classification_admin ou data_classification_auditor.

    Tableau 5. Paramètres
    Nom Type Description
    Aucun
    Tableau 6. Renvoie
    Type Description
    <tableau>

    Résultat de la demande. Renvoie le sys_id et le nom de chaque classification de données disponible. S’il n’y a pas de classifications de données, renvoie un tableau vide.

    Les classifications de données peuvent être organisées en relations parent-enfant. S’il existe des classifications de données parentes, elles sont identifiées dans le résultat.

    Type de données : tableau

    [
      {
        "parent": {Object},
        "sys_id": "String",
        "name": "String"
      }
    ]
    <Tableau>.parent Entrée pour une classification de données parente.

    Type de données : objet

    "parent": {
      "sys_id": "String",
      "name": "String"
    }
    <Tableau>.parent.sys_id Sys_id de la classification des données parente à partir de la table Classification des données [data_classification].

    Type de données : chaîne

    <Array>.parent.name Nom de la classification des données parente.

    Type de données : chaîne

    <Tableau>.sys_id Sys_id de la classification des données à partir de la table Classification des données [data_classification].

    Type de données : chaîne

    <tableau>.name Nom de la classification des données.

    Type de données : chaîne

    Cet exemple récupère une liste de toutes les classifications de données disponibles.

    var dcm = new global.ScopedDCManager();
    gs.info(dcm.getAllDataClasses());
    

    Sortie :

    [
      {
        "parent": {
          "sys_id": "a9670fc773fc1010ae8dd21efaf6a735",
          "name": "Confidential"
        },
        "sys_id": "348107b951d71010f877f3f178e7dd0d",
        "name": "Personally identifiable information"
      },
      {
        "sys_id": "a9670fc773fc1010ae8dd21efaf6a735",
        "name": "Confidential"
      },
      {
        "sys_id": "59b7070b73fc1010ae8dd21efaf6a764",
        "name": "Restricted"
      },
      {
        "sys_id": "11d60fc773fc1010ae8dd21efaf6a744",
        "name": "Internal"
      },
      {
        "sys_id": "f5b4cf4773fc1010ae8dd21efaf6a766",
        "name": "Public"
      }
    ]

    ScopedDCManager : getClassification(String dictEntries)

    Récupère toutes les classifications de données pour les entrées de dictionnaire spécifiées.

    Nécessite un rôle administrateur, data_classification_admin ou data_classification_auditor.

    Tableau 7. Paramètres
    Nom Type Description
    Entrées de dicte Chaîne La sys_ids des enregistrements pour lesquels vous souhaitez récupérer les classifications. Les sys_ids proviennent de la table Dictionnaire [sys_dictionary]. Saisie sous la forme d’une liste séparée par des virgules entourée d’une chaîne.
    Tableau 8. Renvoie
    Type Description
    <Object>

    Objet JSON contenant les sys_id de chaque entrée de dictionnaire avec un tableau des classes de données associées. S’il n’y a pas de classifications de données associées, renvoie un message décrivant le résultat de l’opération.

    Les classifications de données peuvent être organisées en relations parent-enfant. S’il existe des classifications de données parentes, elles sont identifiées dans le résultat.

    Type de données : objet

    {
      <sys_dictionary_sys_id>: [
        {
          "parent": {Object},
          "sys_id": "String",
          "name": "String"
        }
      ]
    }
    
    <Object>.parent Entrée pour une classification de données parente.

    Type de données : objet

    "parent": {
      "sys_id": "String",
      "name": "String"
    }
    <Object>.parent.sys_id Sys_id de la classification des données parente à partir de la table Classification des données [data_classification].

    Type de données : chaîne

    <Object>.parent.name Nom de la classification des données parente.

    Type de données : chaîne

    <Object>.sys_id Sys_id de la classification des données à partir de la table Classification des données [data_classification].

    Type de données : chaîne

    <Object>.nom Nom de la classification des données.

    Type de données : chaîne

    Cet exemple récupère les classifications de données pour une entrée de dictionnaire.

    var dcm = new global.ScopedDCManager();
    gs.info(dcm.getClassification("445de0a6dba30300efc57416bf9619b0"));
    

    Sortie :

    {
      "445de0a6dba30300efc57416bf9619b0": [
        {
          "parent": {
            "sys_id": "a9670fc773fc1010ae8dd21efaf6a735",
            "name": "Confidential"
          },
          "sys_id": "348107b951d71010f877f3f178e7dd0d",
          "name": "Personally identifiable information"
        }
      ]
    }