{"id":24317,"date":"2021-05-16T19:58:00","date_gmt":"2021-05-16T16:58:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=24317"},"modified":"2021-10-17T20:54:43","modified_gmt":"2021-10-17T17:54:43","slug":"kuinka-luoda-honeypot-taistelulomakkeen-roskapostia-vastaan-laravelissa","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/fi\/kuinka-luoda-honeypot-taistelulomakkeen-roskapostia-vastaan-laravelissa\/","title":{"rendered":"Kuinka luoda Honeypot taistelulomakkeen roskapostia vastaan \u200b\u200bLaravelissa"},"content":{"rendered":"<p>Kun verkkosivustosi k\u00e4ynnistyy pian, alat saada roskapostia verkkosivustosi lomakkeista. Spambot kirjoittavat tietokoneohjelman, joka t\u00e4ytt\u00e4\u00e4 lomakkeen v\u00e4\u00e4rennetyill\u00e4 tiedoilla. Sivustojen omistajille on p\u00e4\u00e4ns\u00e4rky puhdistaa n\u00e4m\u00e4 ei-toivotut tiedot ja suojata tietokantasi tarpeettomilta tietueilta. T\u00e4m\u00e4 artikkeli on kirjoitettu ihmisille, jotka rakensivat sovelluksensa Laravelin avulla. Tutkimme, kuinka heid\u00e4n muotojaan voidaan suojata roskapostilta Laravelissa.<\/p>\n<p>K\u00e4ytt\u00e4j\u00e4 voi lis\u00e4t\u00e4 reCAPTCHA: n lomakkeeseensa, joka testaa, t\u00e4ytt\u00e4v\u00e4tk\u00f6 lomakkeen arvot ihmiset vai eiv\u00e4t. Mutta tekem\u00e4ll\u00e4 niin k\u00e4ytt\u00e4jien on ratkaistava pulma ennen lomakkeen l\u00e4hett\u00e4mist\u00e4. Toinen tapa on lis\u00e4t\u00e4 Google reCAPTCHA: n uusin versio. Mutta se n\u00e4ytt\u00e4\u00e4 reCAPTCHA-kuvakkeen verkkosivustosi oikeassa alakulmassa.<\/p>\n<p>Suurin osa sivuston omistajista ei pid\u00e4 captchoista. Ja jos vihaat captchoja, pid\u00e4 lomakkeissasi hunajapotti, joka ansaisi roskapostit.<\/p>\n<p>Enimm\u00e4kseen spambot ovat tyhmi\u00e4, voimme sanoa, koska ne vain t\u00e4ytt\u00e4v\u00e4t kaikki lomakekent\u00e4t. He eiv\u00e4t ole tietoisia siit\u00e4, mit\u00e4 lomakekentti\u00e4 todella k\u00e4ytet\u00e4\u00e4n jatkoprosessissa. Voimme hy\u00f6dynt\u00e4\u00e4 t\u00e4t\u00e4 skenaariota ja lis\u00e4t\u00e4 lomakkeeseemme tyhj\u00e4n sy\u00f6tekent\u00e4n (hunajapotin). T\u00e4m\u00e4n piilotetun kent\u00e4n tulee olla tyhj\u00e4 lomaketta l\u00e4hetett\u00e4ess\u00e4. Joten kun palvelinpuolella tarkistetaan, onko t\u00e4m\u00e4 piilotettu kentt\u00e4 tyhj\u00e4, se on kelvollinen lomakkeen l\u00e4hetys ja jos se ei ole tyhj\u00e4, se on roskapostia. T\u00e4m\u00e4n j\u00e4lkeen katsotaanpa, miten luoda hunajapottia ja suojata verkkosivustolomakkeita roskapostilta.<\/p>\n<h3>Luo Honeypot ja est\u00e4 lomake roskapostista<\/h3>\n<p>Kuten sanoimme piilotetun kent\u00e4n avulla, voimme huijata spambot ja lopettaa lomakkeen l\u00e4hett\u00e4misen palvelinpuolella. T\u00e4h\u00e4n tarkoitukseen aiomme k\u00e4ytt\u00e4\u00e4 <a href=\"https:\/\/github.com\/spatie\/laravel-honeypot\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">laravel-honeypot-pakettia<\/a>. T\u00e4m\u00e4n paketin avulla k\u00e4ytt\u00e4j\u00e4 voi suojata yht\u00e4 tai useampaa lomaketta helposti. Heid\u00e4n ei tarvitse kirjoittaa palvelinpuolen koodia jokaiselle lomakkeelle erikseen.<\/p>\n<p>Pakettiasennusta varten avaa p\u00e4\u00e4te projektin juurihakemistossa ja suorita komento:<\/p>\n<pre><code>composer require spatie\/laravel-honeypot<\/code><\/pre>\n<p>Kun paketti asennetaan, julkaise paketin m\u00e4\u00e4ritystiedosto komennolla:<\/p>\n<pre><code>php artisan vendor:publish --provider=\"SpatieHoneypotHoneypotServiceProvider\" --tag=config<\/code><\/pre>\n<p>T\u00e4m\u00e4 komento lis\u00e4\u00e4 <code>honeypot.php<\/code>tiedoston <code>config<\/code>hakemistoon. Sinun ei tarvitse muokata m\u00e4\u00e4ritystiedostoa. Sen sijaan <code>.env<\/code>lis\u00e4\u00e4 tiedostoon alla esitetty vakio.<\/p>\n<pre><code>HONEYPOT_NAME=honeypot_for_bots<\/code><\/pre>\n<p>T\u00e4ss\u00e4 annoimme nimen &quot;honeypot_for_bots&quot;, joka on piilotetun kent\u00e4n nimi. Voit asettaa t\u00e4lle vakiolle mink\u00e4 tahansa muun nimen.<\/p>\n<p>Rekister\u00f6i seuraavaksi maailmanlaajuinen v\u00e4liohjelmisto, joka suojaa kaikki lomakkeet yhdest\u00e4 paikasta.<\/p>\n<p><strong>appHttpKernel.php<\/strong><\/p>\n<pre><code>&lt;?php\n\u2026\n\u2026\nprotected $middleware = [\n\u00a0\u00a0\u00a0\/\/ ...\n\u00a0\u00a0\u00a0SpatieHoneypotProtectAgainstSpam::class,\n];<\/code><\/pre>\n<p>Valmista! Siirry nyt lomakkeeseesi ja lis\u00e4\u00e4 hunajapotti lis\u00e4\u00e4m\u00e4ll\u00e4 <code>@honeypot<\/code>siihen lomake HTML. Ter\u00e4tiedostosi n\u00e4ytt\u00e4\u00e4 jotain alla olevalta.<\/p>\n<pre><code>&lt;form action=\"\" method=\"post\"&gt;\n\u00a0\u00a0\u00a0\u00a0@honeypot\n\u00a0\u00a0\u00a0\u00a0&lt;input type=\"text\" name=\"fullname\" placeholder=\"Full Name\" \/&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;input type=\"submit\" name=\"submit\" value=\"Submit\" \/&gt;\n\u00a0\u00a0\u00a0\u00a0{{ csrf_field() }}\n&lt;\/form&gt;<\/code><\/pre>\n<p>Jos roskapostirobotit yritt\u00e4v\u00e4t l\u00e4hett\u00e4\u00e4 roskapostia lomakkeellasi, paketti hylk\u00e4\u00e4 pyynn\u00f6n. Seurauksena ei en\u00e4\u00e4 roskapostia p\u00e4\u00e4dy tietokantaan.<\/p>\n<h4>Aiheeseen liittyv\u00e4t artikkelit<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/fi\/opas-google-recaptcha-v3-n-lisaamisesta-laravel-verkkosivustoosi\/\" title=\"Opas Google reCAPTCHA v3: n lis\u00e4\u00e4misest\u00e4 Laravel-verkkosivustoosi\">Opas Google reCAPTCHA v3: n lis\u00e4\u00e4misest\u00e4 Laravel-verkkosivustoosi<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fi\/kuinka-kayttaa-laravel-tapahtumia-ja-kuuntelijoita-sovelluksessasi\/\" title=\"Kuinka k\u00e4ytt\u00e4\u00e4 Laravel-tapahtumia ja kuuntelijoita sovelluksessasi\">Kuinka k\u00e4ytt\u00e4\u00e4 Laravel-tapahtumia ja kuuntelijoita sovelluksessasi<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>T\u00e4ss\u00e4 artikkelissa tutkitaan, kuinka lis\u00e4t\u00e4 hunajapottia Laraveliin ja suojata muotoasi roskapostilta. Honeypot on vain nuken kentt\u00e4 muodossa, jota k\u00e4ytet\u00e4\u00e4n<\/p>\n","protected":false},"author":1,"featured_media":21671,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[499],"tags":[843],"class_list":["post-24317","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-laravel","tag-affiai-fi"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/posts\/24317","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/comments?post=24317"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/posts\/24317\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/media\/21671"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/media?parent=24317"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/categories?post=24317"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/fi\/wp-json\/wp\/v2\/tags?post=24317"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}