Java Verifikasjon av Input

Java Verifikasjon av Input


Du kan be en bruker å legge inn noe, det være seg et nummer eller et brukernavn, men det betyr ikke at han faktisk vil. En bruker leverer data som programmet ikke forventer kan føre til at programmer ikke fungerer, eller kompromittere systemets sikkerhet. Inkluder mekanismer for å kontrollere brukerundersøkelser før resten av programmet virker på dataene.

program Funksjonalitet

Hvis programmets bruker innganger feil type data, kan det føre til at programmet krasjer. For eksempel kan et program så enkelt som en fire-funksjon kalkulator emulator krasje hvis brukeren skriver inn bokstaver i stedet for tall. Java variabler kan bare holde den type data en programmerer erklært det til å holde, for eksempel tall eller tegn. Hvis et program tar i brukerundersøkelser og prøver å lagre den i en variabel av en annen datatype, vil programmet funksjonsfeil.

injeksjon angrep

Ikke verifisere brukerundersøkelser kan også utgjøre en betydelig sikkerhetsrisiko. Et eksempel på en slik sikkerhetsrisiko er SQL-injeksjon angrep, hvor en bruker skriver ugyldig informasjon i tekstfeltet av et Java-program som henter data fra relasjonsdatabaser. Hvis programmet er bestått brukerundersøkelser direkte inn i SQL-spørring, kan brukeren tvinge feilmeldinger for å avsløre informasjon om selve databasen, eller lure programmet til å kjøre et annet søk.

Bekreftelsesmetoder

Du må skrive kode for å bekrefte at brukerens input ikke vil bryte programmet. Syntaksen "swingObject.getText ();" vil gi deg tilgang til innholdet i en gitt Swing felt der du kan lagre resultatet i en strengvariabel. Erstatt "swingObject" med navnet på dine innspill objekt. Du kan bruke en "for loop" å gå gjennom innholdet i strengen ett element om gangen for å lete etter data som kan skape problemer.

looping

For å være sikker på at dine innspill bekreftelsesmetoden gir brukeren en ny sjanse til å gi gyldig innspill, bør du sette spesialisert funksjon inne i en "mens" loop. Lag en boolsk variabel som er opprinnelig satt til false, og sette "mens" loop til å engasjere seg når denne variabelen er lik sant. Inkluder en "hvis" statement i din bruks mekanisme som utløses når det oppstår et problem med brukerundersøkelser og setter din boolsk variabel til sann.