Uno de los objetivos de Microsoft para los lanzamientos recientes de Windows era mejorar la experiencia del desarrollador, con el objetivo de convertirla en la plataforma preferida para el desarrollo de aplicaciones modernas. Ese objetivo ha llevado al lanzamiento de los subsistemas de Windows para Linux y Android, el almacenamiento resistente Dev Drive basado en el sistema de archivos ReFS, el administrador de paquetes WinGet y el panel de control Dev Home. Estas herramientas ayudan a abordar muchos de los problemas clave que enfrentan los desarrolladores. cara, sin importar el sistema operativo que utilicen. Juntos respaldan el desarrollo multiplataforma al ayudarlo a proteger su código, administrar su cadena de herramientas y realizar un seguimiento de los recursos utilizados por sus aplicaciones y herramientas. Otra área clave es hacer que el código de desarrollo esté disponible para usuarios y dispositivos remotos, especialmente cuando está Pruebas de aplicaciones móviles y web. Esto nos lleva a los túneles de desarrollo de Microsoft, que recientemente estuvieron disponibles en Visual Studio 2022 y en Visual Studio Code (a través de la extensión Remote – Tunnels). También está disponible una interfaz de línea de comandos de túnel de desarrollo para Windows, macOS y Linux. Túneles de ingreso y desarrollo Las herramientas de ingreso, como los túneles de desarrollo, combinan proxies inversos con una API y una puerta de enlace web, creando túneles hacia su PC de desarrollo desde redes externas, al tiempo que garantizan solo la tráfico que desea pasar. El acceso a los recursos locales es esencial cuando se crean aplicaciones modernas nativas de la nube, se trabaja con API RESTful remotas y se proporcionan sus propias API. Se necesita tiempo para lograr que los administradores de red configuren servidores proxy en su firewall, tiempo que obstaculiza las pruebas y demostraciones ad hoc. En cambio, podemos reflejar el acceso al código de depuración a través de un servicio en la nube, utilizándolo para proporcionar una IP pública. dirección y, en algunos casos, un nombre de dominio completo. Por lo general, funcionan a través de un puerto no estándar, lo que reduce el riesgo de que un atacante se conecte a un servicio posiblemente defectuoso. Probablemente la herramienta de este tipo más conocida sea ngrok, que ofrece planes tanto gratuitos como de pago. Sin embargo, los túneles de desarrollo, introducidos recientemente como parte de Visual Studio 2022 v17.6, tienen el mismo propósito. Inicialmente diseñados como una herramienta de depuración, los túneles de desarrollo exponen un puerto específico de su máquina local a la Internet pública, para que pueda acceder a él desde otros dispositivos y servicios. Incluso puede usarlo para brindar acceso de demostración a las partes interesadas y a los clientes, brindándoles información sobre el trabajo en progreso. Quizás el beneficio más importante de un servicio como los túneles de desarrollo es que le permite trabajar con puntos finales y API reales, en lugar de tener que hacerlo. cree simulacros y utilice datos sintéticos o de muestra. En lugar de dedicar tiempo a crear y validar simulaciones, puede concentrarse en escribir código. Este enfoque reduce el riesgo de que su aplicación se diseñe en torno a una simulación con errores, además de hacer que sea mucho más fácil probar y depurar el código. Introducción a los túneles de desarrollo Hay tres formas de configurar túneles de desarrollo, desde Visual Studio 2022, desde Visual Studio Code con la extensión Remote – Tunnel instalada y desde la propia interfaz de línea de comandos de los túneles de desarrollo. Configuración de un túnel de desarrollo en Visual Studio 2022 o en Visual Studio Code es relativamente simple. En Visual Studio, encontrará las herramientas de administración del túnel de desarrollo en el menú Ver, en Otras ventanas. Seleccione ‘túneles de desarrollo’ para abrir una lista de túneles disponibles y haga clic en el signo más para crear una nueva instancia. Los túneles de desarrollo están asociados con la cuenta utilizada para registrar Visual Studio, por lo que puede ser un Entra ID (lo que solía ser Azure Active Directorio) o una cuenta de Microsoft de consumidor (MSA). Lo último es más probable para una persona que utiliza la edición comunitaria de Visual Studio para desarrollo personal o de código abierto. Comience por nombrar su túnel. Puede crear una biblioteca de diferentes combinaciones de nombres, tipos y controles de acceso de túneles que se pueden intercambiar según sea necesario. Los túneles pueden ser temporales o permanentes, y los túneles temporales obtienen una nueva URL cada vez que inicia Visual Studio. La elección final es elegir quién tiene acceso. Los túneles privados están vinculados al ID del usuario que creó el túnel, mientras que los túneles organizacionales son solo para miembros del mismo grupo de Entra que el usuario. Si bien puede crear un alcance organizacional para un túnel con un MSA de consumidor, realmente no tiene sentido hacerlo. Si no le preocupa quién tiene acceso o si está exponiendo un túnel temporal a los clientes como parte de una demostración o una prueba a mayor escala, puede elegir la opción pública. Esto no requiere autenticación, por lo que debe usarse solo cuando confíe en los usuarios o cuando la URL utilizada se reciclará cuando se complete la demostración. El acceso al túnel se controla mediante tokens. Se puede acceder a ellos haciendo clic derecho en el túnel en la lista de túneles de desarrollo, lo que los copia en el portapapeles. Una vez que tenga un token y necesite acceder a un servicio, por ejemplo, si está consultando un servicio RESTful o un punto final gRPC, puede agregar un encabezado HTTP temporal X-Tunnel-Authorization a su llamada para autorizar a un cliente. Uso de túneles de desarrollo en Visual Studio o VS Code Para iniciar un túnel desde Visual Studio o VS Code, simplemente elija un túnel para usar desde la vista de inicio de la aplicación, luego cree y ejecute una sesión de depuración. Esto abrirá una ventana del navegador local que está conectada al punto final alojado por Microsoft para el túnel. Si está utilizando un túnel autenticado con una aplicación web, se le solicitarán las credenciales al acceder a la URL generada. Puede copiar la URL del túnel y compartirla con colegas según sea necesario. Desplácese hacia la derecha de la ventana Visual Studio Dev Tunnels para administrar su túnel, haciendo clic en el ícono de administración. Esto muestra la conexión actual para un túnel, detallando la aplicación que se está tunelizando y el puerto utilizado. Desde esta vista, haga clic en Inspeccionar para iniciar un inspector de red alojado en Edge como herramienta de depuración adicional, para ayudar a comprender cómo funciona su código con un navegador o cualquier otro cliente. Uso de la CLI de túneles de desarrollo No está limitado a usar túneles de desarrollo con Visual Studio , ya que también se pueden administrar mediante una CLI. Esto se puede descargar desde Winget para Windows y también está disponible para macOS y Linux. Incluso se pueden crear túneles de desarrollo basados ​​en CLI con cuentas de GitHub (si instala las herramientas de GitHub independientes), así como con ID de Entra y MSA, lo que le permite utilice los inicios de sesión con código de dispositivo GitHub como alternativa a la opción de autenticación predeterminada basada en navegador. Una vez que haya iniciado sesión en la máquina en la que desea alojar el túnel, use el comando devtunnel host para crear un nuevo túnel. Este comando le permite elegir un nombre para un túnel, los puertos que reenviará y si se permite el acceso anónimo. Una vez creado el túnel, se le presenta el URI del túnel, que puede copiarse y usarse en el código que desee. volver a realizar pruebas o por un tercero. También es posible asignar puertos, de modo que una aplicación que busque una API en el puerto 3000 pueda acceder a un túnel a través de ese puerto. Esto se debe a que la tecnología subyacente utilizada por los túneles de desarrollo se basa en el reenvío de puertos SSH, lo que proporciona una interfaz fácil de usar para una característica a menudo compleja. La CLI proporciona herramientas para administrar sus túneles, incluido enumerarlos y mostrar detalles de un túnel específico. y crear túneles persistentes que se pueden utilizar como parte de las pruebas de clientes para dispositivos móviles. Hay más opciones en la CLI que en su contraparte de Visual Studio. Por ejemplo, utilizando la CLI puede crear túneles que tengan una vida fija o etiquetar túneles con descripciones que se pueden usar para buscar túneles específicos. Otros comandos agregan puertos y protocolos a un túnel, lo que le permite especificar HTTP o HTTPS. El medidor está en ejecución. Tenga en cuenta que existen límites para el uso del túnel. Una suscripción Enterprise le ofrece 10 túneles por usuario, con un límite de ancho de banda de 5 GB. Otros límites controlan la cantidad de conexiones y puertos admitidos por túnel, así como las tasas de solicitud y transferencia. Eso significa que no debería esperar poder utilizar túneles de desarrollo para realizar pruebas de estrés en una aplicación. Más bien, están destinados a pruebas de funciones e integración, así como a comprobar rápidamente cómo se ve su código en los dispositivos cliente. Tener un proxy de entrada como túneles de desarrollo dentro (y fuera) de Visual Studio debería simplificar la construcción de cadenas de herramientas de desarrollo. Hasta ahora, si estuviera creando y probando, digamos, aplicaciones de Teams, necesitaría usar ngrok o una herramienta de terceros similar para vincular su sistema de desarrollo al inquilino de Teams de su organización. Ahora es simplemente parte de su conjunto de herramientas existente. ¿No es agradable cuando la vida se vuelve más sencilla? Copyright © 2024 IDG Communications, Inc.

Source link