Hei!
Voisiko HTMLlällä toteuttaa sellaisen, että tietys sivun alkuun tulee jokin koodi ja kun sivustolle haetaan niin se kysyy salasanaa, mutta ei siinä kaikki. Sen pitäisi toimia esim niin, että kun laittaa toiselle sivulle koodin
<iframe src="https://www.ohjelmointiputka.net" pass="1234567890" ></iframe>
niin se ei kysyisi salasanaa enää, koska iframessa on jo valmiina
pass="1234567890"
Olisiko tämä mitenkään mahdollista javascriptiä saa käyttää.
Periaattees on, mut ei tietenkään onnistu ihan noin vaan "jonkun muun sivustolle/kaikille sivustoille automaattisesti".
Lisäksi en ota kantaa siihen, onko siinä sitten erittäin isoa tietoturva-aukkoa...
idea on se, että esim botit ei pääse sivulle, tuo iframe tulee sellaiselle sivustolle mihin vain toisen sisään kirjautumisen jälkeen pääsee. Eli niinkään siitä miten pitävä koodi on niin ei ole väliä.
Siis ihan perus SSO kyseessä. Käytännössä voit tehdä esimerkiksi aikaleimaa ja jaettua salaisuutta käyttäen tiivisteen jonka avulla lähdesivusto autentikoi käyttäjän kohdesivustolle. Tällöin se tulisi esim. muodossa
<iframe src="http://kohdesivusto/?time=aikaleima&signature=tiiviste"></iframe>
Tosin toki toi voi olla myös vaikka redirectinä ilman turhaa iframea.
Minkäläinen koodi olisi silloin kyseessä?
Sori, nyt vasta tajusin että halusit tehdä ihan html:llä ja javascriptillä. Käytännössä näillä kahdella ei mitään oikeaa tietoturvaa tehdä.
Sanoit että kohdesivu kysyy salasanaa. Jos kyseessä on http autentikaatio, niin periaatteessa html-linkkiin voi laittaa käyttäjätunnuksen ja salasanan: http://tunnus:salasana@www.osoite.bla/ mutta tämä taitaa olla monissa selaimissa nykyään rajoitettua, antaa varoituksen tms.
Jos tarkoitus on vain estää bottien selailu sivuilla, niin silloin tietysti laitetaan robots.txt kuntoon ja unohdetaan nämä aivan käsittämätömät sähellykset.
The Alchemist kirjoitti:
Jos tarkoitus on vain estää bottien selailu sivuilla, niin silloin tietysti laitetaan robots.txt kuntoon ja unohdetaan nämä aivan käsittämätömät sähellykset.
Noinhan se pitäisi toteuttaa. Kaikki botit eivät kuitenkaan välitä robots.txt-tiedostoista ollenkaan.
Myös JS:llä on mahdollista tehdä suojattuja sivuja, mutta se on hyvin vaivalloista ja epäkäytännöllistä. Suojauksen voi tehdä niin, että sivun lähdekoodi on etukäteen salattu (enkryptattu) ja salaus puretaan JavaScriptilla käyttäen avaimena syötettyä salasanaa. Toinen vaihtoehto on salata vastaavalla tavalla pelkästään sivujen osoitteet, mutta silloin käyttäjä pystyy halutessaan kopioimaan osoitteen jostain ja jakamaan salaamatonta osoitetta.
Monilla palvelimilla kuitenkin toimii joko htaccess tai PHP, ja niillä kirjautuminen on paljon helpompi toteuttaa.
HTML5 kirjoitti:
The Alchemist kirjoitti:
Jos tarkoitus on vain estää bottien selailu sivuilla, niin silloin tietysti laitetaan robots.txt kuntoon ja unohdetaan nämä aivan käsittämätömät sähellykset.
Noinhan se pitäisi toteuttaa. Kaikki botit eivät kuitenkaan välitä robots.txt-tiedostoista ollenkaan.
Noh, hakukoneindeksoijat se pääsääntöisesti blokkaa, koska ne seuraavat robots.txt:n ohjeita. Roskapostibotteja, jotka kenties etsivät sähköpostiosoitteita yms. eivät tietysti välitä tuollaisista, mutta mitähän botteja tässä haettiin ja millä perustein?
Sain ongelman hoidettuu, kiitos kuitenkin vastauksista! :D
Lisäys: Mikä oli se PHP komento millä sai omille sivuilleen kopioitua toisen sivun?
Juhku kirjoitti:
Mikä oli se PHP komento millä sai omille sivuilleen kopioitua toisen sivun?
$c = file_get_contents("http://www.google.fi"); file_put_contents("google", $c);
Huomio että mahdolliset ulkoiset tiedostot (js, css, kuvat...) pitää tietenkin hakea erikseen jos ne on linkitetty alkuperäiseen sivuun relatiivisesti.
Onkos sitten mahdollista sellainen, että voisin tuoda toisen sivuston Iframema, mutta alkuperäis osoitetta ei näytettäisi, eli se olisi piillotettu.
No tiedäthän sinä miten iframe toimii. Eli ei ole mahdollista.
ENtä muuten esim javascriptillä tai aJaxsilla?
Juhku kirjoitti:
ENtä muuten esim javascriptillä tai aJaxsilla?
Se selviää parhaiten testaamalla.
Muutenkin kannattaa ottaa mieluummin sellainen asenne, että testailet pienillä testipätkillä miten mikin asia toimii. Ongelmatilainteissa kannattaa vähän googlailla, eikä aina olettaa, että joku muu vastaa puolestasi.
Tämmöistä omatoimisuutta tarvitaan ohjelmoinnissa, ja ohjelmoinnista tulee paljon jouhevampaa, kun ongelmatilanteissa osaat itse alkaa miettiä heti ongelmaan ratkaisua, tai vastaavasti jo etukäteen sudenkuoppien kiertämistä.
Juu olen etsinyt ja etsin mtös Googllella, mutta kysyn täältäkin, jos joku tietäs.
No tiedäthän sinä senkin, eli ei voi. Ajax-pyyntöjen osoite näkyy käyttäjälle siinä missä iframen src-attribuutin arvokin. Ajaxia käyttäessä on vielä sellainen lisärajoite, ettei pyyntöjä voi tehdä vapaasti ihan mihin tahansa osoitteeseen.
Aihe on jo aika vanha, joten et voi enää vastata siihen.