Junior — Middle
Πού ακριβώς στη αίτηση HTTP πρέπει να αναφέρονται τα στοιχεία αυθεντικοποίησης, όπως το όνομα χρήστη και ο κωδικός;
sobes.tech AI
Απάντηση από AI
Τα δεδομένα αυθεντικοποίησης, όπως το όνομα χρήστη και ο κωδικός πρόσβασης, μεταδίδονται συνήθως στην κεφαλίδα Authorization του αιτήματος HTTP. Ο πιο συνηθισμένος τρόπος είναι η χρήση του σχήματος Basic Authentication, όπου το όνομα χρήστη και ο κωδικός κωδικοποιούνται σε Base64 και αποστέλλονται στην κεφαλίδα:
Authorization: Basic base64(login:password)
Για παράδειγμα, αν το όνομα χρήστη είναι user και ο κωδικός πρόσβασης pass, η συμβολοσειρά προς κωδικοποίηση θα είναι user:pass.
Παράδειγμα σε Android με HttpURLConnection:
String credentials = "user:pass";
String auth = "Basic " + Base64.encodeToString(credentials.getBytes(), Base64.NO_WRAP);
connection.setRequestProperty("Authorization", auth);
Η αποστολή του ονόματος χρήστη και του κωδικού πρόσβασης στο σώμα του αιτήματος ή στη διεύθυνση URL (π.χ., στα παραμέτρους GET) δεν συνιστάται για λόγους ασφαλείας.