Close
    Search Search

    Contexto de seguridad

    Contexto de seguridad

    Los scripts en Roblox tienen una identidad de hilo que indica qué acceso de seguridad tienen a la API de scripting. Algunos miembros de la clase en la API de secuencias de comandos solo pueden ser utilizados por secuencias de comandos que tienen el permiso requerido.


    Contenido

    Identidades

    Una identidad de subproceso es una identidad (un número entero) otorgada a un subproceso que indica qué permisos tiene.


    La identidad de un hilo se puede encontrar utilizando la función printidentity. Esta función imprimirá la identidad del hilo, precedida por el último argumento dado si es una cadena o un número, "(nulo)" en caso contrario, y un espacio. Si no se le da ningún argumento, lo antepondrá como "La identidad actual es", seguido de un espacio.

    Ejemplo En un script con identidad 2, printidentity () mostraría que la identidad actual es 2 en la salida.

    La identidad de un hilo dependerá normalmente de su procedencia. Por ejemplo, los subprocesos ejecutados como complementos tienen una identidad de 6, los subprocesos que ejecutan código desde la barra de comandos o la opción "ejecutar script" tienen una identidad de 5, y los scripts y los scripts locales suelen tener una identidad de 2. [nota 1]


    Identidades
    Corporativa Descripción
    0 Hilos anónimos
    1 Acciones iniciadas por el usuario en Roblox Studio
    2 Objetos BaseScript en cualquier DataModel
    3 Objetos BaseScript en cualquier DataModel, en un lugar creado por Roblox
    4 Objetos BaseScript en cualquier DataModel, si fueron creados por Roblox
    5 Barra de comandos de Studio, "Ejecutar secuencia de comandos", parámetro de línea de comandos -script
    6 Complementos de Studio, API COM
    7 API de servicios web
    8 Recibir datos mediante replicación

    Permissions

    Cada propiedad, método, evento o devolución de llamada en la API de secuencias de comandos puede requerir un permiso. Los permisos existentes son PluginSecurity, RobloxPlaceSecurity, LocalUserSecurity, WritePlayerSecurity, RobloxScriptSecurity, RobloxSecurity, TestLocalUserSecurity, ScriptWriteRestricted: [NotAccessibleSecurity] y ScriptWriteRestricted: [PluginSecurity]. Todos los hilos tienen acceso a miembros que no requieren permiso.


    Permissions
    permiso Descripción
    Ninguna Cualquier identidad puede acceder a esta función, incluidos los scripts del juego.
    Enchufar Segundo nivel de acceso más bajo, justo por encima de la secuencia de comandos del juego.
    RobloxPlace Lugares creados por Roblox, donde los scripts son más confiables y se permiten funciones preliminares.
    LocalUser Permiso no relacionado con el juego, generalmente para Roblox Studio.
    WritePlayer Permisos para cambiar el nombre del jugador, la identificación de usuario, etc.
    RobloxScript Un script, como un CoreScript, que se ejecuta dentro de un juego.
    roblox Nivel de permiso más alto.
    TestLocalUser En las compilaciones de prueba, esto equivale a no tener permiso, pero en las compilaciones normales es equivalente a LocalUser.

    Roles

    La siguiente tabla muestra qué permisos están asociados a cada identidad.


    Roles
    Corporativa Permissions
    0 Ninguna
    1 Complemento, RobloxPlace, LocalUser
    2 Ninguna
    3 RobloxPlace
    4 Complemento, RobloxPlace, LocalUser, RobloxScript
    5 Complemento, RobloxPlace, LocalUser
    6 (construcción de estudio) Enchufar
    6 (construcción sin estudio) Todos los permisos
    7 Todos los permisos
    8 RobloxPlace, WritePlayer, RobloxScript
    Algo más Ninguno, más un error de afirmación

    Maquinas virtuales

    Los subprocesos con diferentes identidades se pueden ejecutar con diferentes máquinas virtuales Lua, de modo que los scripts de usuario no se mezclen con scripts creados por Roblox. Actualmente solo hay dos máquinas virtuales, una para CoreScripts y otros subprocesos que tienen acceso a RobloxScript y otra para todos los demás subprocesos. En las compilaciones de estudio, hay una tercera máquina virtual utilizada para complementos de estudio.



    Restricciones adicionales

    Si la propiedad RobloxLocked de un objeto es verdadera, solo los scripts con el permiso de complemento podrán indexar señales e hijos del objeto, establecer sus propiedades o asignar sus devoluciones de llamada, llamar a las funciones de rendimiento del objeto, cambiar el padre de los hijos del objeto , o cree objetos con el objeto como padre usando Instance.new (clase, padre). Además, los scripts que no tengan este permiso no podrán llamar a funciones no productivas del objeto a menos que no sea un descendiente de CoreGui. Esta propiedad se utiliza, entre otras cosas, para objetos GUI creados por CoreScripts.

    Véase también

    • Lista de miembros por seguridad

    Notas

    1. ↑ Pueden tener una identificación de 3 cuando se ejecutan en un juego creado por Roblox y una identificación de 4 cuando están incluidos en la lista blanca de Roblox.
    Añade un comentario de Contexto de seguridad
    ¡Comentario enviado con éxito! Lo revisaremos en las próximas horas.