Protezione pagina con codice numerico
Autore: Michele M.
Visite 1299,
Followers 2,
Condiviso 0
Devo proteggere una pagina (posso anche nasconderla se serve) mediante un accesso cosituito solo da un codice numerico, tipo PIN bancomat per capirci.
In pratica il mio utente trova un campo sulla home, vi scrive dentro il codice "12345" e gli si apre la pagina.
Oppure seleziona la pagina dal menu e gli viene richiesto l'inserimento del codice per la sua apertura.
Per me è indifferente. L'unica protezione che conosco è quella classica, ma sono due campi, di cui uno "email", e non mi va bene.
Un suggerimento?
Grazie.
Michele
Postato il
cosa cambia se deve inserire anche la mail???
è una sicurezza in più...
Un suggerimento che ti posso dare è quello di usare il file htaccess e htpasswd. Online puoi reperire varie guide. A ogni modo dovrai comunicare username e password.
Fai prima a creare un pagine protetta con il software e indicare nella home le credenziali di accesso.
Dal mio punto di vista inserire un codice sulla home per far accedere l'utente non ha tanto senso perché alla portata di tutti, dunque la protezione è un controsenso.
Puoi proteggerla normalmente e nascondere il campo email precompilabdolo con Jquery.
Le cifre saranno però minimo 6
https://helpcenter.websitex5.com/it/post/228307
Autore
Grazie a tutti per le risposte.
@ Mirko: il problema non è la sicurezza, alla fine la pagina da "proteggere" è un banalissimo questionario; è una richiesta che mi è stata fatta, non può restare libera perché finirebbe a schifìo, ma non deve nemmeno richiedere "tempo" per l'accesso altrimenti chi deve partecipare non partecipa, complicazioni mentali dei partecipanti...
@ Gabriele: la richiesta sarà palese quindi nessuno avrà interesse a mettersi a fare un milione di tentativi per accedere ad un questionario
@Giorgio:questa soluzione mi sta benissimo, la provo e ti faccio sapere,grazie
Se si tratta di un questionario e desideri evitare spam puoi inserire la verifica di Google per i form.
Autore
Lo spam è causato da altri utenti. In pratica in un gruppo di 120 studenti ne abbiamo selezionato a caso una trentina che sono stati invitati a compilare il questionaio; non sono obbligati e non ne hanno voglia; forzando il minimo indispensabile, loro lo compileranno, se diventa di pubblico dominio gli altri si divertiranno a fare fesserie.
In sostanza sono bricconcelli.
Il sistema di Google in un certo senso complica la vita anche a chi vuole fare il simpatico, tanto da scatenare meme sui social.
Se pubblichi le credenziali di accesso alla pagina protetta secondo me ottieni sempre il medesimo risultato.
Essendo utenti predefiniti (almeno da quanto ho compreso), potresti creare anticipatamente gli account con le relative pw dedicate e comunicarle ai rispettivi studenti.
Puoi anche usare email "inesistenti", esempio ***.
Tra le altre cose se usi credenziali dedicate potresti mitigare il comportamento "indisciplinato" essendo che l'output è riconducibile al singolo.
Se il problema è la pagina con codice numerico puoi seguire l'utile indicazione di Giorgio C., mentre se l'intento è evitare studenti eccessivamente spiritosi potresti optare per la classica email e pw per il singolo oppure ambedue.
A te la scelta!
Autore
Lo so Gabriele, ma queste sono le motivazioni che mi hanno dato e questa è la soluzione che mi hanno chiesto, solo che a me il codice di Giorgio C. non funziona.
Ho inserito nella sezione esperto della pagina protetta il codice presente nell'allegato di Giorgio C. ma non funziona proprio; ho provato a modificare l'indirizzo email nella query per vedere se veniva riconosciuto, ma i campi appaiono entrambi e se metto la sola password mi dice che l'email manca.
Secondo dipende dal fatto che è scritto per il carrello, mentre io sto usando la classica protezione di pagina, mi servirebbe il codice variato, spero possiate aiutarmi, la soluzione sarebbe perfetta per quello che mi è stato chiesto di fare.
Grazie
... se insisti con la EVO, come ti ha già detto, dovresti compilare il campo "nascosto" con un stringa jQuery...
... eventualmente posta il LINK per poter valutare, e forse risolveresti all'istante...
...
... intanto mi è venuta in mente una mia soluzione che mi ero inventato 3 lustri fa con SwishMax...
... putroppo i miei esempi si sono estinti, ...ma in pratica si trattava di usare la funzione PHP MAIL(), entrata in disuso, ma dovrebbe essere ancora supportata nativamente da tutti i server...
... nel form_mail basterebbero solo due campi di input:
[e-mail] | [codice] > [INVIO]
... con il metodo mail() riceveresti un email che ti avvisa, e a chi compila arriverebbe l'email con il LINK per scaricare il file...
... i files PDF dovrebbero avere questa forma, codiceNumerico.pdf >> per es.: 12345.pdf
... direi semplicissimo...
.
Autore
Ciao KolAsim, ho usato il codice completo pubblicato nell'altra discussione, inserendo già l'email di accesso:
<!-- Proprietà Pagina (Carrello e-commerce) - Esperto - Prima della chiusura del tag HEAD -->
<style>
label[for="Email"], #Email{
display: none !important;
}
</style>
<script>
function nem() {
setTimeout(function() {
$('#Email').val('***');
}, 800);
}
$(window).on("hashchange load", nem);
</script>
link della pagina:
http://www.fvcalabria.unicz.it/imlogin.php?loginstatus=-3
(questa è una pagina a caso protetta normalmente, alla quale ho applicato il codice di sopra, ma come puoi vedere non succede assolutamente niente, sarano diversi i nomi dei campi)
L'altra soluzione non l'ho proprio capita, ma io devo poter accedere ad una pagina che contiene un questionario, mediante una password di 5-6 numeri, senza username, non devo inviare niente a nessuno e non devo scaricare file.
... nel caso ti interessasse, ne riparleremo...
... intanto, ...per la pagina che hai postato, prova questo mio codice da incollare nella sezione Esperto | Codice personalizzato | 3^ opzione: Prima della chiusura del TAG /HEAD:
<style>
.imLoginBlock:nth-child(1) {width:0px;height:0px;font-size:0px;visibility: hidden;}
</style>
<script>
$( document ).ready(function() {
setTimeout(function() {
$('#imUnameLogin').val('KolAsim');
}, 6000);});
</script>
... al posto di KolAsim metti una email, per es.: aaa(At)aa.aa >> (At) = @
.
Prova così sempre nella posizione che dice KolAsim al Passo 1 >avanzate>statistiche e codice> Codice>prima della chiusura di HEAD
<style>
#imLoginForm > div:nth-child(1){
display: none !important;}
</style>
<script>
$(document).ready(function(){
$('#imUnameLogin').val('ee.com');
});
</script>
Natu
... hai ragione, scusami, ...mi sono accorto adesso che quel suggerimento a cui ti riferisci lo avevo fatto sbagliando per altro Topic, questo: https://helpcenter.websitex5.com/it/post/232067
ciao
.
Autore
@KolAsim no problem, ci mancherebbe!
@KolAsim e @Giorgio C.: i due codici non funzionano; però non vorrei avervi messo fuori strada, quindi chiarisco. La pagina che sto provando è una normale pagina protetta con la funzione "protetta" della sezione "Creazione della mappa", quindi non ricorrendo all'oggetto Login/Logout. Inoltre mi viene il dubbio che per far funzionare i vostri codici devo attivare qualcosa di particolare. Comunque l'effetto è nullo, mi appaiono i due campi e devo compilarli per entrare; il campo user/email appare vuoto e non risulta nemmeno virtualmente "riempito" con l'indirizzo che ho messo nel codice, infatti se digito la sola password mi dà l'errore di campo obbligatorio.
Cosa sto sbagliando?
Dove metti i codici?
... il mio codice come avevo detto è per la pagina che hai postato prima, ma vedo che il codice non lo hai inserito: http://www.fvcalabria.unicz.it/imlogin.php
... ho verificato simulando e per me dovrebbe funzionare regolarmente...
ciao
.
Autore
Vi chiedo scusa, avete ragione, ora che ho controllato, però nel progetto il link che vi ho dato non lo trovo. Mi spiego, la pagina da proteggere è
http://www.fvcalabria.unicz.it/area-riservata-studenti_rc.php
ed in questa pagina ho messo il codice, secondo le vostre istruzioni. Ma quando io la apro mi appare prima:
http://www.fvcalabria.unicz.it/imlogin.php?loginstatus=-3
che non trovo da nessuna parte nella mappa, come faccio a scriverci il codice?
Nel sito ci sono una decina di pagine protette e tutte quante aprono prima questa pagina.
Autore
Aggiungo che su questa pagina sto facendo delle prove, poi dovrò crearne una nuova nella quale inserirò un questionario realizzato con Google, quindi se conviene usare un metodo diverso invece della classica protezione WS per me non c'è problema, l'importante è raggiungere lo scopo, restando però nella grafica del sito.
Scusa se mi intrometto, non ho letto tutto il post, ma credo che ti vorresti fare sparire il campo email (se non ho capito male), quindi il codice andrebbe nella pagina del login, tu dove hai messo il codice?
Leggi bene le istruzioni che ti abbiamo dato!!
Il codice va messo al Passo 1 >avanzate>statistiche e codice> Codice>prima della chiusura di HEAD e non nella pagina interessata come hai fatto tu.
Autore
[/quote][quote="Giorgio C."] Leggi bene le istruzioni che ti abbiamo dato!! Il codice va messo al Passo 1 >avanzate>statistiche e codice> Codice>prima della chiusura di HEAD e non nella pagina interessata come hai fatto tu. [/quote]
Scusami Giorgio, KolAsim mi aveva scritto di mettere il codice nella pagina, non mi sono accorto che tu mi stessi dando istruzioni diverse. Ho provato e funziona, ma in questo modo, mettendo il codice nelle impostazioni generali del sito, il campo email mi sparisce in TUTTE le pagine protette, mentre io devo agire solo sulla pagina:
http://www.fvcalabria.unicz.it/imlogin.php?loginstatus=-3
che però non riesco a trovare, penso che la generi al momento il programma, visto che è uguale per tutte le pagine protette.
[quote="Giancarlo B."] Scusa se mi intrometto, non ho letto tutto il post, ma credo che ti vorresti fare sparire il campo email (se non ho capito male), quindi il codice andrebbe nella pagina del login, tu dove hai messo il codice? [/quote]
No no, grazie per l'intervento, è come dici ma, come ho appena scritto se metto il codice di KolAsim nella pagina da proteggere non funziona, ma questa di login che parte all'inizio non riesco a trovarla da nessuna parte; posso agire solo come mi ha consigliato Giorgio C., ma in questo modo viene applicata a tutte le login, e così non mi va bene purtroppo.
... io non ho il programma!! ...ma dovresti trovarla tra gli Alias al Passo_3 in basso nella sezione Pagine speciali:
.
... invece se messo al Passo_1 potrebbe andare su tutte le pagine, basta che provi...
.
Autore
Grazie KolAsim, ho capito ed fatto la prova, ora il tuo codice funziona, ma sempre su TUTTE le pagine protette; nell'accesso riservato io ho una decina di combinazioni Login/Pass associati ad altrettante pagine. Possibile che non ci sia un modo per indicare al codice che deve "intervenire" solo per una specifica combinazione?
Oppure non si potrebbe fare in modo che il codice venga abilitato SOLO quando scelgo di aprire una determinata pagina, cliccando sul suo link o pulsante?
... se usi lo stesso metodo di accessi, non dovresti avere problemi...
... oppure, forse, potresti differenziare usando pagine protette separate in sotto-siti...
.
ciao
.
Autore
No purtroppo il metodo mi serve solo per una pagina, le altre devo richiedere regolarmente l'email.
Dovrei creare un sottosito per questa sola pagina e poi applicare lì il tuo codice, se non trovo una soluzione più semplice farò questa prova. Grazie
Se ti accontenti di una protezione all'acqua di rose puoi fare in questo modo:
inserisci la tua pagina come nascosta (non protetta) e la chiami per esempio 123456pagina.html invece in un'altra inserisci questo script che la richiama (lo metti in oggetto html) e la password sarà una parte del nome della pagina.
Es. se la pagina da proteggere si chiama 123456pagina.html la password sarà 123456
Molto grezzo, ma funge.
<script>
function AreaProtetta() {
location.href = document.getElementById('pass').value + "pagina.html";
}
</script>
<p>Inserisci la password:</p>
<input type="password" id="pass";>
<input type="button" value="Accedi" onclick=AreaProtetta();>
Autore
GRAZIE! Funziona una meraviglia, con una pagina 404 ho intercettato l'errore, mi sta più che bene.
Solo una piccola implementazione, se possibile, si può fare in modo che l'INVIO funzioni come in tutte le altre situazioni? Se possibile, altrimenti non è davvero un problema?
Grazie davvero!
... in alternativa al metodo di Giorgio , simile a questo che suggerivo anche io, si potrebbe usare il PHP (semplice) col l'istruzione switch()/case in modo che la PASS sia indipendente dagli attuali nomi file/pagine; ... se ti interessasse ancora avvisami, che rispolvero il vecchio codice da SwishMax...
.
... a quale tipo di funzionamento ti riferisci...?...
.
Autore
Sì certo, intanto per imparare e poi perché questa non è una protezione reale, come giustamente ha chiarito Giorgio, mentre col PHP la pagina sarebbe protetta realmente.
... a quale tipo di funzionamento ti riferisci...?...
Intendevo avere la possibilità di confermare la password anche con INVIO, mentre attualmente devo necessariamente cliccare sul pulsante di conferma.
Grazie.
... scusa, forse non ho capito, ma il pulsante "accedi" corrisponde ad INVIO o conferma...
... se la pagina non esiste potresti predisporre un errore 301 lato server, oppure usare il precedente php che ho accennato, configurandolo...
... no! ... la pagina per chi ne conosce l'URL è sempre a disponibile in chiaro...
... per proteggerla con pass dovresti usare una protezione lato server, ...ma ovviamente chi ne conoscerà la pass potrà cedervi se non adotti altri accorgimenti, come per esempio la rinomina temporanea della cartella...
.
...forse mi sono perso qualcosa...
@Michele...
ma perchè non crei una pagina di accesso dedicata (e non protetta) con l'oggetto login ed il codice per nascondere la mail (solo in quella pagina, quindi nelle sue proprietà)...
in gestione accessi , specifichi come pagina di atterraggio la tua pagina col questionario che metterai protetta con le funzionalità di website...
Autore
Attualmente, appena digito la password, se premo INVIO sulla tastiera non succede niente, devo per forza cliccare col mouse sul pulsante ACCEDI, vorrei che funzionasse anche l'INVIO, se fosse possibile.
... se la pagina non esiste potresti predisporre un errore 301 lato server, oppure usare il precedente php che ho accennato, configurandolo...
... no! ... la pagina per chi ne conosce l'URL è sempre a disponibile in chiaro...
... per proteggerla con pass dovresti usare una protezione lato server, ...ma ovviamente chi ne conoscerà la pass potrà cedervi se non adotti altri accorgimenti, come per esempio la rinomina temporanea della cartella...
Se si comporta come quella che ho attualmente allora non vale la pena farti perdere tempo a cercare il codice, va bene la situazione attuale.
Credo di aver capito quello che devo fare, domani la testo. Grazie Claudio D.!
Si è esattamente da lì che ho preso il codice...
Comunque di modi c'è né vari anche quello suggerito da @Claudio mi sembra una valida alternativa da esplorare: sfrutteresti la protezione offerta dal programma in virtù di una semplicità di gestione
... mo' si può capire cosa intendevi dire ......
... per passare il focus puoi per esempio incorporare gli input nel tag <FORM>; ...per esempio prova in questo modo, e con la password in chiaro, più controllabile:
<script>
function AreaProtetta() {
location.href = document.getElementById('pass').value + "pagina.html";}
</script>
<form action="javascript:AreaProtetta()" >
password: <br>
<input type="text" id="pass"> <br><br>
<input type="button" value="Accedi" onclick="AreaProtetta()">
</form>
.
Autore
Ora sto cercando di far funzionare l'idea di Claudio, se non va torno all'idea precedente e metto in pratica questo tuo suggerimento
Autore
Ho fatto così:
1 - pagina QST con oggetto Login/Logout
2 - Nelle sue proprietà ho messo il codice iniziale di KolAsim:
<style>
.imLoginBlock:nth-child(1) {width:0px;height:0px;font-size:0px;visibility: hidden;}
</style>
<script>
$( document ).ready(function() {
setTimeout(function() {
$('#imUnameLogin').val('***');
}, 6000);});
</script>
3 - Ho creato una pagina LinkQuestionario (nascosta, protetta e collegata a QSTN) che contiene il link al mio sito personale
4 - Nella gestione accessi ho aggiunto l'utente QSTN con mail *** e pass 123654 e collegamento alla pagina LinkQuestionario
5 - Pubblico e provo; cliccando sulla pagina QST mi appare effettivante il solo campo pass, ma digitando la pass mi dà errore "I dati di accesso inseriti non sono corretti"; a questo punto si apre di nuvo anche il campo email: digito correttamente user e password e la pagina finale si apre correttamente.
Cosa sto sbagliando?
...spezza il codice di KolAsim così:
questo prima della chiusura del tag head
<style>
.imLoginBlock:nth-child(1) {width:0px;height:0px;font-size:0px;visibility: hidden;}
</style>
e questo prima della chiusura del tab body, e personalizzando con l'identificativo del tuo oggetto login (ad esempio _pluginAppObj_1_01 )
<script>
$( document ).ready(function() {
setTimeout(function() {
$('#imUname_pluginAppObj_1_01').val('MAIL_DI_ACCESSO');
}, 6000);});
</script>
Autore
Ho fatto ma non capisco una cosa: _pluginAppObj_1_01 devo sostituirlo con qualche informazione mia? Perché così com'è non mi cambia niente, si comporta allo steso modo; ovviamente al posto di MAIL_DI_ACCESSO ho messo la mail prevista nella gestione accessi.
si devi personalizzarlo col tuo altrimenti non funziona...
da anteprima di website devi trovare il selettore...
click col destro sulla pagina dell'anteprima ...
ispeziona codice...
scegli la freccia e ti posizioni... così vedi come si chiama:
ti faccio l'esempio del mio: (che qui si chiama pluginAppObj_7_01
e quindi scriverei
_pluginAppObj_7_01
... come ti avevo detto per due volte, il codice era riferito alla pagina che avevi linkato, e se è ancora quella dovrebbe essere ancora valido; ...ovviamente se cambi configurazione va controllato il selettore di riferimento...
.
Autore
Perfetto Claudio, grazie, ora funziona. C'è un solo particolare che mi servirebbe sistemare; se sbaglio la password mi appare comunque il doppio campo ed a quel punto la sola password non funziona più a meno che non ricarico la pagina, ma so già che più di qualcuno si fermerà e non andrà avanti.
Con l'altro metodo la password errata mi sbagliava il nome della pagina e lo intercettavo con una pagina 404. C'è un modo per intercettare l'errore di password e tornare alla maschera con la sola password? Grazie ancora.
...ummm a quello non ci avevo pensato... e si in effetti sbagliando , va nella pagina standard di richiesta di password... dove non c'è il codice...
mi spiace sinceramente non ti saprei aiutare...
...!... per non operare a vuoto, quale sarebbe la pagina del login...?...(*)
... potresti risolvere lato server visto che sei già pratico, o nel caso (forse!) con un mio codice EXTRA...
(*) ... se puoi sarebbe meglio postare anche i dati di accesso provvisori per il test...
.
Autore
OK, non fa niente, torno al sistema precedente, tanto non ho problemi di protezione reale. Grazie dell'aiuto!! Sei sempre molto gentile e disponibile.