Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Geliştirme tünelleri, güvenlik odaklı bir geliştirici tünel hizmetidir. Bu makalede geliştirme tünellerinin güvenliğinin nasıl sağlandığından emin olun.
Genel Bakış
Varsayılan olarak, bir tüneli barındırmak ve tünele bağlanmak için tüneli oluşturan aynı Microsoft, Microsoft Entra Id veya GitHub hesabıyla kimlik doğrulaması gerekir. Tünel oluşturma, Azure'da barındırılan hizmete giden bağlantıların yapılmasını gerektirir. Hizmeti kullanmak için gelen bağlantı gerekmez.
Etki alanları
Geliştirme tünellerine erişim, aşağıdaki etki alanlarına giden erişime izin vererek veya reddederek denetlenebilir:
Kimlik doğrulama
github.comlogin.microsoftonline.com
Geliştirme Tünelleri
global.rel.tunnels.api.visualstudio.com[clusterId].rel.tunnels.api.visualstudio.com[clusterId]-data.rel.tunnels.api.visualstudio.com*.[clusterId].devtunnels.ms*.devtunnels.ms
Geçerli [clusterId] değerlerin listesi adresinde https://global.rel.tunnels.api.visualstudio.com/api/v1/clustersbulunabilir.
Web yönlendirme
HTTP(S)/WS(S) protokollerini kullanan tünel bağlantı noktalarına doğrudan sağlanan web iletme URL'si üzerinden erişilebilir (örneğin: https://tunnelid-3000.devtunnels.ms).
- Güvenli olmayan istemci bağlantıları her zaman otomatik olarak HTTPS/WSS'ye yükseltilir.
- HTTP Strict Transport Security (HSTS), bir yıl maksimum yaş ile etkinleştirilmiştir.
- Hizmetin desteklediği en düşük TLS sürümü 1.2'dir ve tercih edilen sürüm TLS 1.3'dür.
- TLS sonlandırma, hizmet girişinde bir Microsoft CA tarafından verilen hizmet sertifikaları kullanılarak gerçekleştirilir.
- TLS sonlandırmanın ardından header yeniden yazılır. Bu, birçok web uygulaması geliştirme senaryosu için gereklidir.
Kimlik avından koruma
Web yönlendirme URL'sine ilk kez bağlanırken, kullanıcılara bir ara kimlik avı önleme sayfası sunulur. Sayfa aşağıdaki koşullarda atlanır:
- İstek,
GETdışında bir yöntem kullanıyor. - İstek
Acceptüst bilgisitext/htmliçermiyor - İstek üst bilgisini içeriyor
X-Tunnel-Skip-AntiPhishing-Page - İstek üst bilgisini içeriyor
X-Tunnel-Authorization - Kullanıcı sayfayı zaten ziyaret etti ve Devam'a tıkladı
Tünel erişimi
Varsayılan olarak, tüneller ve tünel bağlantı noktaları özeldir ve yalnızca tüneli oluşturan kullanıcı tarafından erişilebilir.
Bir tünel veya tünel bağlantı noktasına kimlik doğrulaması olmadan erişilmesi gerekiyorsa, anonim erişime izin ver denetim girdisi (ACE) eklenebilir (kullanın --allow-anonymous).
Tünel erişimi, geçerli Microsoft Entra kiracınıza (kullanın --tenant) veya belirli GitHub kuruluşlarına (kullanın --organization) da genişletilebilir; ikincisi için aşağıdaki GitHub Kuruluş Erişimi'ne bakın.
CLI, belirteci tutan herkese sınırlı erişim izni veren erişim belirteçleri istemek için de kullanılabilir (kullanın devtunnel token). Bu gelişmiş bir özelliktir ancak belirli durumlarda yararlı olabilir.
Şu anda dört tür tünel erişim belirteci kullanılabilir:
- "İstemci erişim belirteci", taşıyıcının tünelin herhangi bir bağlantı noktasına bağlanmasına olanak tanır.
- "Konak erişim belirteci", taşıyıcının tüneli barındırmasına ve bağlantıları kabul etmesine izin verir, ancak başka bir değişiklik yapmaz.
- "Bağlantı noktalarını yönetme erişim belirteci", taşıyıcının tüneldeki bağlantı noktalarını eklemesine ve silmesine olanak tanır.
- "Yönetim erişim belirteci", taşıyıcının bu tünelde erişim denetimlerini ayarlama, tüneli barındırma, bağlama ve silme dahil olmak üzere tüm işlemleri gerçekleştirmesine olanak tanır.
Tüm belirteçler geçerli tünelle sınırlıdır; varsa, geçerli kullanıcının diğer tünellerinden hiçbirine erişim izni vermez. Jetonların geçerliliği bir süre sonra (şu anda 24 saat) sona erer. Belirteçler yalnızca tünele yönetim kapsamı erişimi olan gerçek bir kullanıcı kimliği kullanılarak yenilenebilir (yalnızca bir yönetim erişim belirteci değil).
Çoğu CLI komutu, oturum açmaya alternatif olarak uygun bir belirteç içeren --access-token bağımsız değişkeni kabul edebilir.
Web istemciler, bir belirteci üst bilgiye ekleyerek istekleri bir tünel URI'sine yetkilendirebilir.
X-Tunnel-Authorization: tunnel <TOKEN>
Tavsiye
Bu, etkileşimli olmayan istemcilerin anonim erişimin etkinleştirilmesine gerek kalmadan tünellere erişmesine olanak tanıdığı için kullanışlıdır. Uygulamaya özgü yetkilendirmeyi potansiyel olarak engelleme olasılığını önlemek için standart X-Tunnel-Authorization üst bilgi yerine Authorization üst bilgisini kullanırız.
CLI aracılığıyla tünel erişimini yönetme hakkında daha fazla bilgi edinmek için Geliştirme tüneli erişimini yönetme bölümüne bakın.
GitHub Organizasyonu Erişimi
GitHub kuruluşunun tüm üyelerine erişim izni veren tünelleri desteklemek için kuruluşa Dev Tunnels GitHub uygulamasını yükleyin. Bu, Dev Tunnels hizmetine kullanıcıların kuruluştaki üyelik durumunu denetleme izni verir. (Geliştirme Tünelleri kuruluş için depo izinleri gerektirmez.) Bu işlemi gerçekleştirmek için GitHub kuruluşunda yönetici olmanız gerekebilir.
Diğer sorular
Bu sayfayı gözden geçirdikten sonra başka sorularınız varsa bkz. Geri bildirim ve destek.