iOS güvenlik ve gizlilik özellikleri
Bu makalede, iOS 'ta güvenlik ve gizlilik ile çalışma ve Xamarin. iOS uygulamasını nasıl etkilediği ele alınmaktadır.
Apple, geliştiricilerin uygulamalarının güvenliğini geliştirmesine ve son kullanıcının gizliliğini sağlamanıza yardımcı olacak iOS 10 ' da (ve üzeri) güvenlik ve gizlilik için birkaç geliştirme yaptı. Bu makale, bu özellikleri bir Xamarin. iOS uygulamasında uygulamayı kapsar.
Genel geliştirmeler
İOS 10 ' da güvenlik ve gizlilik için aşağıdaki genel değişiklikler yapılmıştır:
- Ortak veri güvenliği mimarisi (CDSA) API 'SI kullanımdan kaldırılmıştır ve asimetrik anahtarlar oluşturmak için SecKey API 'siyle değiştirilmelidir.
- Yeni
NSAllowsArbitraryLoadsInWebContentanahtar, bir uygulamanınNSAllowsArbitraryLoadsInWebContentdosyasına eklenebilir ve Apple Transport Security (ATS) koruması hala uygulamanın geri kalanı için etkinken Web sayfalarının doğru yüklenmesine izin verir. Daha fazla bilgi için lütfen Uygulama Aktarım güvenliği belgelerimize bakın. - İOS 10 ve macOS Sierra 'daki yeni Pano, kullanıcının cihazlara kopyalamasını ve yapıştırmasını sağladığından, API 'nin belirli bir cihazla sınırlı olmasına ve belirli bir noktada otomatik olarak temizlenmeye çalışmasına izin verecek şekilde genişletildi. Ayrıca, adlandırılmış pasteboards artık kalıcı olmaz ve paylaşılan çalışma alanı kapsayıcılarıyla değiştirilmelidir.
- Tüm SSL/TLS bağlantıları için, RC4 simetrik şifresi artık varsayılan olarak devre dışıdır. Ayrıca, güvenli aktarım API 'SI artık SSLv3 desteklememektedir ve geliştiricinin SHA-1 ve 3DES şifrelemesini mümkün olan en kısa sürede kullanmasını öneririz.
Özel Kullanıcı verilerine erişme
İOS 10 ' da (veya üzeri) çalışan uygulamalar, Info. plist dosyalarına uygulamanın neden erişim elde etmesini açıklayan bir veya daha fazla gizlilik anahtarı girerek belirli özelliklere veya Kullanıcı bilgilerine erişim amacınızı statik olarak bildirmelidir.
Önemli
Gerekli anahtarları sağlayamayacak uygulamalar, hiç hata olmadankısıtlı özelliklerden veya Kullanıcı bilgilerinizin birine erişmeyi denediklerinde sistem tarafından sessizce sonlandırılır! Bir uygulama iOS 10 ' da beklenmedik bir şekilde başlarsa, gerekli tüm Info. plist öğesinin belirtildiğinden emin olun.
Aşağıdaki gizlilik ile ilgili anahtarlar kullanılabilir:
- Gizlilik-Apple Music kullanım açıklaması ( )-geliştiricinin uygulamanın neden kullanıcının Medya kitaplığına erişmesi istediğini belirlemesine izin verir.
- gizlilik-Bluetooth çevresel kullanım açıklaması ( )-geliştiricinin uygulamanın, kullanıcının cihazında Bluetooth erişim istediğini belirlemesine izin verir.
- Gizlilik-takvimler kullanım açıklaması ( )-geliştiricinin uygulamanın neden kullanıcının takvimine erişmek istediğini açıklamasına izin verir.
- Gizlilik-kamera kullanım açıklaması ( )-geliştiricinin uygulamanın cihazın kamerasına neden erişmesi istediğini belirlemesine izin verir.
- Gizlilik-kişiler kullanım açıklaması ( )-geliştiricinin uygulamanın neden kullanıcının kişilerine erişmek istediğini açıklamasına izin verir.
- Gizlilik-sistem durumu paylaşma kullanım açıklaması ( )-geliştiricinin uygulamanın neden kullanıcının sistem durumu verilerine erişmek istediğini belirlemesine izin verir. Daha fazla bilgi için lütfen Apple 'ın Hkhealthstore sınıf başvurusunabakın.
- Gizlilik-sistem durumu güncelleştirme kullanım açıklaması ( )-geliştiricinin uygulamanın neden kullanıcının sistem durumu verilerini düzenlemek istediğini açıklamasına izin verir. Daha fazla bilgi için lütfen Apple 'ın Hkhealthstore sınıf başvurusunabakın.
- Gizlilik-HomeKit kullanım açıklaması ( )-geliştiricinin uygulamanın neden kullanıcının HomeKit yapılandırma verilerine erişmek istediğini belirlemesine izin verir.
- Gizlilik-konum her zaman kullanım açıklaması ( )-geliştiricinin uygulamanın neden her zaman kullanıcının konumuna erişimine sahip olmasını istediğini belirlemesine izin verir.
- Kullanım dışı Gizlilik-konum kullanım açıklaması ( )-geliştiricinin uygulamanın neden Kullanıcı konumuna erişmek istediğini belirlemesine izin verir. NOTE: Bu anahtar, iOS 8 ' de (ve üzeri) kullanımdan kaldırılmıştır.
NSLocationAlwaysUsageDescriptionNSLocationWhenInUseUsageDescriptionBunun yerine veya kullanın. - Gizlilik-konum kullanım açıklaması () kullanıldığında, geliştiricinin uygulamanın, çalışırken kullanıcının konumuna erişmek istediğini belirlemesine izin verir.
- Kullanım dışı Gizlilik-medya kitaplığı kullanım açıklaması -geliştiricinin uygulamanın neden kullanıcının Medya kitaplığına erişmesi istediğini belirlemesine izin verir. NOTE: Bu anahtar, iOS 8 ' de (ve üzeri) kullanımdan kaldırılmıştır. Bunun yerine
NSAppleMusicUsageDescriptionkullanın. - Gizlilik-mikrofon kullanım açıklaması ( )-geliştiricinin neden uygulamanın cihazların mikrofonuna erişmesi istediğini belirlemesine izin verir.
- Gizlilik-hareket kullanım açıklaması ( )-geliştiricinin uygulamanın neden hızlandırma için hızlandırma istediğini tanımlamasını sağlar.
- Gizlilik-Fotoğraf Kitaplığı kullanım açıklaması ( )-geliştiricinin uygulamanın neden kullanıcının fotoğraf kitaplığına erişmesi istediğini belirlemesine izin verir.
- Gizlilik-anımsatıcılar kullanım açıklaması ( )-geliştiricinin uygulamanın neden Kullanıcı anımsatıcılarına erişmek istediğini belirlemesine izin verir.
- Gizlilik-Siri kullanım açıklaması ( )-geliştiricinin uygulamanın neden Kullanıcı verilerini Siri 'e göndermesini istediğini belirlemesine izin verir.
- Gizlilik-konuşma tanıma kullanım açıklaması ( )-geliştiricinin uygulamanın neden Apple konuşma tanıma sunucularına Kullanıcı verileri göndermesini istediğini belirlemesine izin verir.
- Gizlilik-TV sağlayıcısı kullanım açıklaması ( )-geliştiricinin UYGULAMANıN neden kullanıcının TV sağlayıcısı hesabına erişmesi istediğini belirlemesine izin verir.
Info. plist anahtarlarıyla çalışma hakkında daha fazla bilgi Için lütfen Apple 'ın bilgi özelliği liste anahtarı başvurusunabakın.
Gizlilik anahtarlarını ayarlama
İOS 10 ' da (ve üzeri) HomeKit 'e erişmenin aşağıdaki örneğini yapın, geliştiricinin NSHomeKitUsageDescription anahtarı uygulamanın NSHomeKitUsageDescription dosyasına eklemesi ve uygulamanın neden kullanıcının HomeKit veritabanına erişmek istediğini bildiren bir dize sağlaması gerekir. Bu dize kullanıcıya uygulamayı ilk kez çalıştırdıklarında sunulacaktır:
Örnek bir
Visual Studio için Xamarin. iOS şu anda, ınfo. plist gizlilik anahtarlarını varsayılan iOS bildirim düzenleyicisi içinden düzenlemenizi desteklemiyor. Bunun yerine, genel PList düzenleyicisini kullanmanız gerekir, bu nedenle şunları yapın:
Çözüm GezginiInfo. plist dosyasına sağ tıklayın ve birlikte aç...seçeneğini belirleyin.
Dosya açmak için programlar listesinden genel PList düzenleyicisini seçin ve ardından Tamam' a tıklayın.

+Listeye yeni bir giriş eklemek için düzenleyicide son satırdaki düğmeye tıklayın. Bu, türü olarak ayarlanmış
Stringve boş bir değer olan "özel özellik" olarak adlandırılacaktır.Özellik adına tıklayın ve bir açılan menü görüntülenir.
Açılan listeden bir gizlilik anahtarı seçin (örneğin, Gizlilik-HomeKit kullanım açıklaması):

Uygulamanın neden verilen özelliğe veya Kullanıcı bilgilerine erişmek istediği için değer sütununa bir açıklama girin:
AçıklamaDosyadaki değişiklikleri kaydedin.
Önemli
Yukarıda verilen örnekte, NSHomeKitUsageDescriptionNSHomeKitUsageDescription dosyasındaki anahtarı ayarlama hatası, iOS 10 ' da (veya üzeri) çalıştırıldığında hata olmadan uygulamanın sessizce başarısız olmasına neden olur (veya daha fazla).
Özet
Bu makalede, Apple 'ın iOS 10 ' da yaptığı ve Xamarin. iOS uygulamasını nasıl etkilediği güvenlik ve gizlilik değişiklikleri ele alınmıştır.

Açıklama