U kunt een gebruiker om input iets vragen , of het nu een nummer of een gebruikersnaam , maar dat betekent niet dat hij eigenlijk wil. Een gebruiker verstrekken van gegevens die uw programma niet verwacht kan programma's leiden tot storingen of gevaar beveiliging van uw systeem . Mechanismen omvatten om gebruikersinvoer te controleren voordat de rest van het programma werkt op de data . Programma Functionaliteit Als gebruiker uw programma 's ingangen van de verkeerde soort gegevens kan ertoe leiden dat de toepassing vastloopt . Bijvoorbeeld , kan een programma zo eenvoudig als een vier - functie rekenmachine emulator crashen als soorten de gebruiker in letters in plaats van cijfers . Java variabelen kan slechts het soort data een programmeur verklaarde het aan te houden , zoals gehele getallen of tekens . Als een programma neemt in input van de gebruiker en probeert het op te slaan in een variabele van een ander gegevenstype , zal het programma niet goed functioneert. Injectie aanvallen Niet verifiëren van input van de gebruiker kan ook een aanzienlijk veiligheidsrisico presenteren . Een voorbeeld van een dergelijk veiligheidsrisico is SQL- injectie aanvallen , waarbij een gebruiker ongeldige gegevens in het invoerveld van een Java -programma dat gegevens uit relationele databases ophaalt . Als uw programma is direct het passeren van de input van de gebruiker in de SQL-query , kan de gebruiker dwingen foutmeldingen om informatie over de database zelf te onthullen , of truc het programma in het runnen van een andere query . verificatie Methoden U moet code om te controleren of de input van uw gebruikers het programma niet zal breken schrijven . De syntax " swingObject.getText ( ) ; " geeft u toegang tot de inhoud van een bepaald Swing veld voor u om het resultaat op te slaan in een string variabele . Vervang " swingObject " met de naam van uw input-object . U kunt een " lus " te gebruiken om door de inhoud van de string een element in een tijd om te zoeken naar gegevens die problemen kunnen veroorzaken . Looping om ervoor te zorgen dat uw input verificatie methode nog een kans om geldige input te geven geeft de gebruiker , moet u uw gespecialiseerde functie gezet in een lus "terwijl" . Maak een boolean variabele die in eerste instantie is ingesteld op false , en zet de lus "terwijl" om deel te nemen wanneer die variabele gelijk waar. Onder andere een " if" statement in uw controle mechanisme dat activeert wanneer zich een probleem voordoet met de input van de gebruiker en stelt uw boolean variabele op true .
|