Desarrolladores

Desarrolladores

3 min de lecturaVer como Markdown ↗

Tres cosas que construir sobre URnetwork, y tres credenciales distintas. Elegir la correcta es la primera decisión, y la diferencia no es cosmética.

Estás construyendoEmpieza porCredencial
Una app o un dispositivo que se conecta a URnetworkSDK, y después el recorrido del SDKUn JWT de cuenta, intercambiado por uno que lleva un clientId
Un cliente de aplicación que usa TCP, UDP, TLS/DTLS o Direct Sockets a través de un DeviceSockets del SDKUn Device inicializado con una ruta de conexión disponible
Automatización sobre tu propia redAPI del operadorTu JWT de red o tu clave de API urn_
Un producto en el que la gente inicia sesión y que admite en su redIniciar sesión con URnetwork (Sign in with URnetwork)Un client_id de OAuth emitido a tu nombre

La línea divisoria que importa es sobre la red de quién actúas. Con el SDK y la API del operador actúas sobre la tuya, con una credencial que tienes y controlas. Iniciar sesión con URnetwork es una persona que admite tu software en la suya: esa credencial nunca la tienes tú; te la concede esa persona, y puede retirarla.

El SDK

Empieza por Instalar el SDK y usa después el explorador de ejemplos para ver programas ejecutables en doce lenguajes. Cada lenguaje tiene una guía de instalación y un directorio socket con integraciones ejecutables de clientes HTTP.

El SDK de Go, el SDK de JS/WASM y la ABI de CGo comparten un mismo motor de red. Los paquetes de lenguaje de escritorio envuelven el módulo CGo; Android usa el AAR de gomobile y Swift usa el XCFramework de Apple. JavaScript incluye ejemplos tanto para Node como para el navegador, que usan un Device alojado.

Sockets del SDK explica cómo usar las conexiones TCP, UDP, TLS/DTLS y Direct Sockets de un Device, en espacio de usuario. Las aplicaciones pueden usar estos sockets sin instalar una VPN del sistema. El DeviceRemote de un navegador usa la ruta de paquetes de su Device alojado; no requiere una interfaz TUN propiedad del navegador.

Qué binding elegir expone los compromisos uno junto a otro. Toma esa decisión antes de escribir código: fija tu modelo de procesos, no solo tu sintaxis.

API del operador

La API HTTP que hay detrás de URnetwork. Arranca el protocolo connect, emite los JWT con los que se autentican los clientes y expone las transacciones de emparejamiento sobre las que funciona la red. Todas las rutas y esquemas están en /docs/api, generados a partir de la especificación.

Su alcance es tu red. El nombre invita a pensar que opera sobre la red en general; no es así.

Hay un paso en el que tropieza casi todo el mundo: las rutas /auth devuelven un JWT sin clientId, y el protocolo connect exige uno con él. Usa las rutas /network para intercambiarlo. Una red es una subred única a nivel global (xyz.ur.network); un clientId es una dirección de 16 bytes, equivalente a una dirección IPv6 y expresada como un UDID.

Iniciar sesión con URnetwork

Permite que la gente admita tu app o tu agente en su red privada, para que pueda coordinarse con todo lo demás que tiene funcionando allí. Está en desarrollo y aún no está en producción: consulta la propia página para ver lo que existe hoy.

El servidor MCP no es una cuarta categoría. Es un servidor de recursos al que se llega con un token de Iniciar sesión con URnetwork, y un ejemplo práctico del patrón.

Fronteras entre tokens

Los dos sistemas de credenciales se firman con conjuntos de claves disjuntos. Es una frontera de seguridad, no una convención: un token de Iniciar sesión con URnetwork no es una credencial de plataforma, y presentarlo donde se espera un JWT de plataforma falla por construcción. Los tokens de acceso de OAuth están además ligados a una audiencia: cada uno se verifica para exactamente un recurso y se rechaza en cualquier otro sitio.

Hay un único cruce autorizado, y es un puente, no un atajo: una app admitida intercambia su token de OAuth por un JWT de plataforma que lleva un clientId, limitado a la red en la que fue admitida. El intercambio es una decisión de autorización que se toma en el servidor; ningún token se verifica en dos sitios.

Si tienes dos credenciales y una de ellas no funciona, este suele ser el motivo.