iOS Universal Links
Giriş
Evrensel bağlantılar, kullanıcılara Safari yönlendirmesi gereksinimini atlayarak içeriği doğrudan uygulamada açarak kesintisiz bir yönlendirme deneyimi sunar. Bu bağlantılar, diğer uygulamalar tarafından talep edilemez ve güvenlidir. Bu, apple-app-site-association
JSON dosyasının web sitesinin kök dizininde barındırılmasıyla sağlanır ve web sitesi ile uygulama arasında doğrulanabilir bir bağlantı kurar. Uygulama yüklü olmadığı durumlarda, Safari kullanıcıyı web sayfasına yönlendirir ve uygulamanın varlığını sürdürür.
Sızma testçileri için apple-app-site-association
dosyası özellikle ilgi çekicidir, çünkü bu dosya, yayınlanmamış özelliklerle ilgili olabilecek duyarlı yolları ortaya çıkarabilir.
İlişkili Alan Yetkisi'nin Analizi
Geliştiriciler, Universal Bağlantıları Xcode'un Yetenekler sekmesinde İlişkili Alanlar'ı yapılandırarak veya .entitlements
dosyasını inceleyerek etkinleştirir. Her alan applinks:
ile önekiyle belirtilir. Örneğin, Telegram'ın yapılandırması aşağıdaki gibi görünebilir:
Daha kapsamlı bilgilere ulaşmak için arşivlenmiş Apple Geliştirici Belgeleri'ne başvurun.
Derlenmiş bir uygulama ile çalışılıyorsa, yetkilendirmeler bu kılavuzda belirtildiği gibi çıkarılabilir.
Apple App Site Association Dosyasını Almak
apple-app-site-association
dosyası, yetkilendirmelerde belirtilen alan adları kullanılarak sunucudan alınmalıdır. Dosyanın https://<alan_adı>/apple-app-site-association
adresinden doğrudan HTTPS üzerinden erişilebilir olduğundan emin olun. Apple App Site Association (AASA) Validator gibi araçlar bu süreçte yardımcı olabilir.
Uygulamada Universal Bağlantıları İşlemek
Uygulama, universal bağlantıları doğru bir şekilde işlemek için belirli yöntemleri uygulamalıdır. Aranması gereken temel yöntem application:continueUserActivity:restorationHandler:
yöntemidir. İşlenen URL'lerin şemasının HTTP veya HTTPS olması önemlidir, diğerleri desteklenmeyecektir.
Veri İşleyici Yöntemini Doğrulama
Bir universal bağlantı bir uygulamayı açtığında, bir NSUserActivity
nesnesi URL ile birlikte uygulamaya iletilir. Bu URL'yi işlemeye başlamadan önce, güvenlik risklerini önlemek için doğrulamak ve temizlemek önemlidir. İşlemi gösteren bir Swift örneği aşağıda verilmiştir:
URL'ler, özellikle parametre içeriyorsa, potansiyel sahte veya hatalı verilere karşı dikkatlice ayrıştırılmalı ve doğrulanmalıdır. Bu amaçla NSURLComponents
API'si kullanışlıdır, aşağıda gösterildiği gibi:
Bu kod parçası, verilen URL'yi ayrıştırır ve bileşenlerine erişim sağlar. Böylece, URL'nin şeması, ana bilgisayarı, yolunu ve parametrelerini elde edebilirsiniz.
Geliştiriciler, evrensel bağlantıların kullanıcı deneyimini artırırken güvenlik ve gizlilik standartlarını korumak için dikkatli yapılandırma ve doğrulama yaparak sağlayabilirler.
Referanslar
Last updated