Sobes.tech
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) δεν συνιστάται για λόγους ασφαλείας.