Change Password

Please enter the password.
Please enter the password. Between 8-64 characters. Not identical to your email address. Contain at least 3 of: uppercase, lowercase, numbers, and special characters.
Please enter the password.
Submit

Change Nickname

Current Nickname:
Submit

Apply New License

License Detail

Please complete this required field.

  • Ultipa Graph V4

Standalone

Please complete this required field.

Please complete this required field.

The MAC address of the server you want to deploy.

Please complete this required field.

Please complete this required field.

Cancel
Apply
ID
Product
Status
Cores
Applied Validity Period(days)
Effective Date
Excpired Date
Mac Address
Apply Comment
Review Comment
Close
Profile
  • Full Name:
  • Phone:
  • Company:
  • Company Email:
  • Country:
  • Language:
Change Password
Apply

You have no license application record.

Apply
Certificate Issued at Valid until Serial No. File
Serial No. Valid until File

Not having one? Apply now! >>>

Product Created On ID Amount (USD) Invoice
Product Created On ID Amount (USD) Invoice

No Invoice

v4.5
Search
    Français
    v4.5

      Privilège

      Les privilèges sont le contenu de base de l'authentification des utilisateurs. Les privilèges sont catégorisés en Privilèges de Commande et Privilèges de Propriété.

      Privilèges de Commande permettent aux utilisateurs d'exécuter des commandes UQL particulières. Selon la portée de la commande UQL, elles sont divisées en :

      • Privilège de Graph :
        • Permet aux utilisateurs d'exécuter des UQLs liés au schema, property, index, metadata, path, algorithme et task backend d'un GraphSet spécifique
        • Le nom du GraphSet doit être désigné lors de l'octroi des privilèges de graph
      • Privilège de Système :
        • Permet aux utilisateurs d'exécuter des UQLs liés au privilège, policy, user, GraphSet et process UQL d'une base de données Ultipa Graph

      Référez-vous au Tableau des Privilèges à la fin de cet article pour tous les privilèges de commande et leurs commandes UQL correspondantes.

      Privilèges de Propriété permettent ou refusent aux utilisateurs de lire (interroger et retourner) et d'écrire (insérer, mettre à jour et supprimer) des propriétés personnalisées particulières. GraphSet et schema doivent être désignés :

      • READ : Permet aux utilisateurs de lire des propriétés personnalisées particulières
      • WRITE:Permet aux utilisateurs de lire et d'écrire des propriétés personnalisées particulières
      • DENY:Ne permet PAS aux utilisateurs de lire ou écrire des propriétés personnalisées particulières

      DENY a une priorité supérieure à READ et WRITE. Si un utilisateur ou une policy est accordé avec DENY et READ (ou WRITE) en même temps, l'effetif est DENY.

      Afficher le Privilège

      Nom de la table retournée : _privilege
      En-tête de la table retournée : graphPrivileges | systemPrivileges (graph privileges, system privileges)

      Syntaxe :

      // Pour lister tous les privilèges de commande pris en charge par le système Ultipa
      show().privilege()
      

      Accorder le Privilège

      Accorder un Privilège de Propriété

      Syntaxe :

      // Pour accorder des privilèges de propriété de node et edge à un utilisateur/policy
      grante().privilege(["READ" | "WRITE" | "DENY"]).on(
        "<graph>",
        <@schema?>,
        "<property?>"
      ).<user|policy>("<name>")
      
      // Pour accorder des privilèges de propriété de node à un utilisateur/policy
      grante().node_privilege(["READ" | "WRITE" | "DENY"]).on(
        "<graph>",
        <@schema?>,
        "<property?>"
      ).<user|policy>("<name>")
              
      // Pour accorder des privilèges de propriété de edge à un utilisateur/policy
      grante().edge_privilege(["READ" | "WRITE" | "DENY"]).on(
        "<graph>",
        <@schema?>,
        "<property?>"
      ).<user|policy>("<name>")
      

      Exemple : Accorder READ de la propriété @product.price de GraphSet supplychain à la policy sales

      grante().node_privilege(["READ"]).on(
        "supplychain",
        @product,
        "price"
      ).policy("sales")
      

      Exemple : Accorder WRITE de toutes les propriétés de tous les GraphSets à l'utilisateur admin002

      grante().privilege(["WRITE"]).on(
        "*",
        @*,
        "*"
      ).user("admin002")
      

      Analyse : Le paramètre on() dans cet exemple peut être raccourci comme on("*")

      Accorder un Privilège de Système

      Syntaxe:

      // Pour accorder des privilèges système à un utilisateur/policy
      grante().system().privilege(<[]system_privileges>).<user|policy>("<name>")
      

      Exemple : Accorder les privilèges système TOP et KILL à l'utilisateur admin002

      grante().system().privilege(["TOP","KILL"]).user("admin002")
      

      Accorder un Privilège Multi-type

      Syntaxe:

      // Pour accorder des privilèges de différents types à un utilisateur/policy
      grante().user("<username>").params({
        graph_privileges: <{}graph_privileges?>,
        system_privileges: <[]system_privileges?>,
        property_privileges: <{}property_privileges?>,
        policies: <[]policies?>
      })
      

      Où les structures de données sont :

      // <{}graph_privileges>
      {
        "<graph1>":["<graph_privilege>", "<graph_privilege>", ...],
        "<graph2>":["<graph_privilege>", "<graph_privilege>", ...],
        ...
      }
      
      // <{}property_privileges>
      {
        "node": {
          "read": [
            ["<graph>", "<@schema?>", "<property?>"],
            ["<graph>", "<@schema?>", "<property?>"],
            ...
          ],
          "write": [
            ["<graph>", "<@schema?>", "<property?>"],
            ["<graph>", "<@schema?>", "<property?>"],
            ...
          ],
          "deny": [
            ["<graph>", "<@schema?>", "<property?>"],
            ["<graph>", "<@schema?>", "<property?>"],
            ...
          ],
        },
        "edge": {
          "read": [
            ["<graph>", "<@schema?>", "<property?>"],
            ["<graph>", "<@schema?>", "<property?>"],
            ...
          ],
          "write": [
            ["<graph>", "<@schema?>", "<property?>"],
            ["<graph>", "<@schema?>", "<property?>"],
            ...
          ],
          "deny": [
            ["<graph>", "<@schema?>", "<property?>"],
            ["<graph>", "<@schema?>", "<property?>"],
            ...
          ],
        }
      }
      

      Exemple : Accorder UPDATE de tous les GraphSets, le privilège système STAT, WRITE de toutes les propriétés de tous les GraphSets, et la policy management à l'utilisateur Ultipa

      grante().user("Ultipa").params({
        graph_privileges: {"*": ["UPDATE"]},
        system_privileges: ["STAT"],
        property_privileges: {
          "node": {
            "write": [["*", "*", "*"]]
          },
          "edge": {
            "write": [["*", "*", "*"]]
          }
        },
        policies: ["management"]
      })
      

      Révoquer le Privilège

      Révoquer un Privilège de Propriété

      Syntaxe :

      // Pour révoquer des privilèges de propriété de node et edge à un utilisateur/policy
      revoke().privilege(["READ" | "WRITE" | "DENY"]).on(
        "<graph>",
        <@schema?>,
        "<property?>"
      ).<user|policy>("<name>")
      
      // Pour révoquer des privilèges de propriété de node à un utilisateur/policy
      revoke().node_privilege(["READ" | "WRITE" | "DENY"]).on(
        "<graph>",
        <@schema?>,
        "<property?>"
      ).<user|policy>("<name>")
              
      // Pour révoquer des privilèges de propriété de edge à un utilisateur/policy
      revoke().edge_privilege(["READ" | "WRITE" | "DENY"]).on(
        "<graph>",
        <@schema?>,
        "<property?>"
      ).<user|policy>("<name>")
      

      Exemple : Révoquer READ de la propriété @product.price de GraphSet supplychain de la policy sales

      revoke().node_privilege(["READ"]).on(
        "supplychain",
        @product,
        "price"
      ).policy("sales")
      

      Exemple : Révoquer WRITE de toutes les propriétés de tous les GraphSets de l'utilisateur admin002

      revoke().privilege(["WRITE"]).on(
        "*",
        @*,
        "*"
      ).user("admin002")
      

      Analyse : Le paramètre on() dans cet exemple peut être raccourci comme on("*")

      Révoquer un Privilège de Système

      Syntaxe:

      // Pour révoquer des privilèges système à un utilisateur/policy
      revoke().system().privilege(<[]system_privileges>).<user|policy>("<name>")
      

      Exemple : Révoquer les privilèges système TOP et KILL de l'utilisateur admin002

      revoke().system().privilege(["TOP","KILL"]).user("admin002")
      

      Révoquer un Privilège Multi-type

      Syntaxe:

      // Pour révoquer des privilèges de différents types d'un utilisateur/policy
      revoke().user("<username>").params({
        graph_privileges: <{}graph_privileges?>,
        system_privileges: <[]system_privileges?>,
        property_privileges: <{}property_privileges?>,
        policies: <[]policies?>
      })
      

      Où les structures de données <{}graph_privileges> et <{}property_privileges> sont les mêmes que celles de la commande grante().

      Exemple : Révoquer UPDATE de tous les GraphSets, le privilège système STAT, WRITE de toutes les propriétés de tous les GraphSets, et la policy management de l'utilisateur Ultipa

      revoke().user("Ultipa").params({
        graph_privileges: {"*": ["UPDATE"]},
        system_privileges: ["STAT"],
        property_privileges: {
          "node": {
            "write": [["*", "*", "*"]]
          },
          "edge": {
            "write": [["*", "*", "*"]]
          }
        },
        policies: ["management"]
      })
      

      Tableau des Privilèges

      Privilèges liés aux Utilisateurs

      Privilège Niveau Commande Légale
      SHOW_PRIVILEGE system show().privilege()
      SHOW_POLICY system show().policy()
      CREATE_POLICY system create().policy()
      ALTER_POLICY system alter().policy()
      DROP_POLICY system drop().policy()
      SHOW_USER system show().user()
      CREATE_USER system create().user()
      ALTER_USER system alter().user()
      DROP_USER system drop().user()
      GRANT system grant()
      REVOKE system revoke()

      Note : La commande show().self() peut être légalement utilisée par tout utilisateur sans autorisation.

      Privilèges liés au Modèle Graphique

      Privilège Niveau Commande Légale
      STAT system stats()
      SHOW_GRAPH system show().graph()
      CREATE_GRAPH system create().graph()
      ALTER_GRAPH system alter().graph()
      DROP_GRAPH system drop().graph()
      MOUNT_GRAPH system mount()
      UNMOUNT_GRAPH system unmount()
      SHOW_SCHEMA graph show().schema(), show().node_schema(), show().edge_schema()
      CREATE_SCHEMA graph create().node_schema(), create().edge_schema()
      ALTER_SCHEMA graph alter().node_schema(), alter().edge_schema()
      DROP_SCHEMA graph drop().node_schema(), drop().edge_schema()
      SHOW_PROPERTY graph show().property(), show().node_property(), show().edge_property()
      CREATE_PROPERTY graph create().node_property(), create().edge_property()
      ALTER_PROPERTY graph alter().node_property(), alter().edge_property()
      DROP_PROPERTY graph drop().node_property(), drop().edge_property()
      SHOW_FULLTEXT graph show().fulltext(), show().node_fulltext(), show().edge_fulltext()
      CREATE_FULLTEXT graph create().node_fulltext(), create().edge_fulltext()
      DROP_FULLTEXT graph drop().node_fulltext(), drop().edge_fulltext()
      SHOW_INDEX graph show().index(), show().node_index(), show().edge_index()
      CREATE_INDEX graph create().node_index(), create().edge_index()
      DROP_INDEX graph drop().node_index(), drop().edge_index()
      LTE graph LTE()
      UFE graph UFE()
      TRUNCATE system truncate()
      COMPACT system compact()

      Privilèges liés aux Données Graphiques

      Privilège Niveau Commande Légale
      INSERT graph insert(), insert().overwrite()
      UPSERT graph upsert()
      UPDATE graph update()
      DELETE graph delete()
      DELETE_NODE graph delete().nodes()
      DELETE_EDGE graph delete().edges()
      TEMPLATE graph n(), e(), re(), le(), nf(), graph()
      KHOP graph khop()
      AB graph ab()
      SPREAD graph spread()
      AUTONET graph autonet()
      FIND graph find()
      FIND_NODE graph find().nodes()
      FIND_EDGE graph find().edges()

      Privilèges Avancés

      Privilège Niveau Commande Légale
      ALGO graph algo()
      SHOW_ALGO graph show().algo()
      SHOW_TASK graph show().task()
      CLEAR_TASK graph clear()
      STOP_TASK graph stop()
      SHOW_BACKUP graph db.backup.show()
      CREATE_BACKUP graph db.backup.create()
      RESTORE_BACKUP graph db.backup.restore()
      TOP system top()
      KILL system kill()
      SHOW_TRIGGER graph show().trigger(), show().node_trigger(), show().edge_trigger()
      CREATE_TRIGGER graph create().node_trigger(), create().edge_trigger()
      DROP_TRIGGER graph drop().node_trigger(), drop().edge_trigger()
      Please complete the following information to download this book
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写