iOS Universal Links
Εισαγωγή
Οι καθολικοί συνδέσμοι προσφέρουν μια απρόσκοπτη ανακατεύθυνση στους χρήστες, ανοίγοντας απευθείας περιεχόμενο στην εφαρμογή, παρακάμπτοντας την ανακατεύθυνση στο Safari. Αυτοί οι συνδέσμοι είναι μοναδικοί και ασφαλείς, καθώς δεν μπορούν να διεκδικηθούν από άλλες εφαρμογές. Αυτό εξασφαλίζεται με τη φιλοξενία ενός αρχείου JSON apple-app-site-association
στον κατάλογο ρίζας του ιστότοπου, δημιουργώντας ένα επαληθέύσιμο σύνδεσμο μεταξύ του ιστότοπου και της εφαρμογής. Στις περιπτώσεις όπου η εφαρμογή δεν είναι εγκατεστημένη, το Safari θα αναλάβει και θα κατευθύνει τον χρήστη στην ιστοσελίδα, διατηρώντας την παρουσία της εφαρμογής.
Για τους ελεγκτές διείσδυσης, το αρχείο apple-app-site-association
είναι ιδιαίτερα ενδιαφέρον, καθώς μπορεί να αποκαλύψει ευαίσθητα μονοπάτια, πιθανώς συμπεριλαμβανομένων εκείνων που σχετίζονται με μη απελευθερωμένα χαρακτηριστικά.
Ανάλυση της εξουσιοδότησης των συνδεδεμένων τομέων
Οι προγραμματιστές ενεργοποιούν τους καθολικούς συνδέσμους διαμορφώνοντας τους συνδεδεμένους τομείς στην καρτέλα Ικανοτήτων του Xcode ή επιθεωρώντας το αρχείο .entitlements
. Κάθε τομέας προηγείται από το applinks:
. Για παράδειγμα, η διαμόρφωση του Telegram μπορεί να εμφανίζεται ως εξής:
Για περισσότερες λεπτομέρειες, ανατρέξτε στην αρχειοθετημένη τεκμηρίωση του Apple Developer.
Εάν εργάζεστε με μια μεταγλωττισμένη εφαρμογή, οι εξουσιοδοτήσεις μπορούν να εξαχθούν όπως περιγράφεται στο ακόλουθο εγχειρίδιο.
Ανάκτηση του αρχείου Apple App Site Association
Το αρχείο apple-app-site-association
πρέπει να ανακτηθεί από τον διακομιστή χρησιμοποιώντας τους τομείς που καθορίζονται στις εξουσιοδοτήσεις. Βεβαιωθείτε ότι το αρχείο είναι προσβάσιμο μέσω HTTPS απευθείας στο https://<domain>/apple-app-site-association
. Εργαλεία όπως το Apple App Site Association (AASA) Validator μπορούν να βοηθήσουν σε αυτήν τη διαδικασία.
Χειρισμός των Universal Links στην εφαρμογή
Η εφαρμογή πρέπει να υλοποιήσει συγκεκριμένες μεθόδους για να χειριστεί σωστά τα universal links. Η κύρια μέθοδος που πρέπει να αναζητηθεί είναι η application:continueUserActivity:restorationHandler:
. Είναι κρίσιμο να εξασφαλιστεί ότι το σχήμα των χειριζόμενων URL είναι HTTP ή HTTPS, καθώς άλλα δεν θα υποστηρίζονται.
Επικύρωση της μεθόδου χειρισμού των δεδομένων
Όταν ένα universal link ανοίγει μια εφαρμογή, ένα αντικείμενο NSUserActivity
περνά στην εφαρμογή με το URL. Πριν επεξεργαστείτε αυτό το URL, είναι σημαντικό να το επικυρώσετε και να το απολυμαίνετε για να αποτρέψετε κινδύνους ασφαλείας. Παρακάτω παρουσιάζεται ένα παράδειγμα σε Swift που επεξηγεί τη διαδικασία:
Οι διευθύνσεις URL πρέπει να αναλύονται και να επικυρώνονται προσεκτικά, ειδικά αν περιλαμβάνουν παραμέτρους, για να προστατευθούμε από πιθανές παραποιήσεις ή μη έγκυρα δεδομένα. Η διεπαφή NSURLComponents
είναι χρήσιμη για αυτόν τον σκοπό, όπως φαίνεται παρακάτω:
Μέσω συνεπούς ρύθμισης και επαλήθευσης, οι προγραμματιστές μπορούν να διασφαλίσουν ότι οι καθολικοί σύνδεσμοι βελτιώνουν την εμπειρία του χρήστη διατηρώντας ταυτόχρονα τα πρότυπα ασφάλειας και απορρήτου.
Αναφορές
Last updated