view"> A while ago I decided it was easier for people who have an account on this site to get redirected to a kind of overview page which shows the latest content (kind of like the block on the front page but with some more options). So I googled and found a very easy way to do this, with Triggers and Actions, the Triggers module is part of the Drupal 7 core so I didn't have to bother with extra modules, it looked like perfect solution.
Easy right? Until someone forgets his password!
Forgotten passwordSo I had this user who forgot her password, she used the password reset option on my website and got a nice email giving her a 'one time login link' (I'll get back to that). After a few days she told me she didn't get to the one time password change option but got redirected to the overview page. And when she navigates to her user profile she needs to enter the old (forgotten) password to change it. Of course this is not how it was meant to be! I did the quick and dirty fix and changed her password and e-mailed this to her but still, this made me annoyed, people would always need my intervention if they forgot their password. No big deal on this site with a total of 5 user accounts but not a solution you want on a site with 500+ users.
Login DestinationsSo I started using my good old friend Google again today and found this module: Login Destination. From the description this was exactly what I was looking for, giving multiple redirect options. After installing I went to configure it and it didn't really give me different options as triggers, login, registration and one-time login link where bundled in one check-box. It does allow for multiple rules and for rules for different user roles but it doesn't allow for a rule for one-time login and a separate rule for normal login. So my first reaction was 'close, but no cigar.' Luckily I still took the effort of testing and to my very pleasant surprise the developers had actually thought about this part and the module actually first redirected to the password change option and only after saving the new password it redirected to overview page I created. This was exactly what I needed. Kuddos for the developers of this module.
One-time login linksTo my surprise, before the user who has a problem with her password actually told me about it she had already used here 'one-time' login link several times! Of course I looked in to this. My first theory was they might only remove the one-time link after the password was changed by the user. So I created a test account, activated this and used the one-time link. Immediately after clicking the link I knew why it wasn't a one time link. It actually says so on the login screen, the link is valid for one month. Even with my background in security I don't see this as high security risk since the link contains a 43 characters long randomly generated string and the user ID. The user ID is guessable, the string, you'll have to find a user with a reset link enabled and still valid and then guess the string, not very likely, not even with a lot of computers trying. What is a little more risk is if someone manages to get this link from a mailbox or browser history. So I would like to argue for a trigger on a password change which deletes the one-time link from the database since this would be the most secure option in my opinion. |
view"> Ik moet weer eens een stukje ergernis kwijt, dit keer over de term Hacker. Dit blogje is wel een beetje van een technische aard maar vooral bedoeld om eindelijk eens iets duidelijk te maken aan mensen die niet zo technisch zijn en het gaat eigenlijk over woorden en terminologie, niet de techniek, vandaar dat het toch een 'personal' blog is geworden. DefinitiesDe media smijt te pas en te onpas met de term Hacker, maar eigenlijk halen ze meerdere termen door elkaar, een korte definitie van de verschillende termen:
In de media is een Hacker dus eigenlijk een Cracker. Het word nog verwarrender omdat er nu Crackers zijn die zichzelf Hacker zijn gaan noemen in navolging van een groep journalisten die het verschil niet wist. Dus is er vanuit zowel de Hacker als Cracker gemeenschap een nieuw onderscheid aangebracht, dus nu heb je het volgende lijstje:
WhitehatsZoals gezegd dit is de groep die vooral gedreven door een zucht naar kennis of uit ideologische overwegingen inbreekt op een systeem. Dit zijn de mensen die zich als klokkenluider opwerpen en dit zijn de mensen die meehelpen een systeem te beveiligen, deze mensen verdienen in mijn mening ons respect. Helaas is het tegenwoordig meestal zo dat als deze mensen een succesvolle inbraak poging op een site of computer keurig melden, dat ze vervolgens geen reactie krijgen, als ze dan na verloop van tijd om het probleem toch aan te kaarten de informatie publiceren, iets wat deze mensen doorgaans op een zeer verantwoorde en veilige manier doen, dan worden ze vervolgd. Dit zijn de mensen die GRATIS hun hulp aanbieden aan grote multinationals en aan onze overheid. Deze groep word dus steeds kleiner en is steeds minder geïnteresseerd in de maatschappij helpen. Dit is in mijn mening een hele slechte ontwikkeling en ik hoop dat die trant zich weer keert. Vaak zijn juist deze mensen briljante programmeurs met een perfect gevoel voor beveiliging als het om computers gaat. Deze mensen wil je juist in dienst nemen of aanmoedigen hun bevindingen te delen zodat je als bedrijf zijnde je veiligheid op orde kunt maken. Helaas word er in de praktijk voor gekozen deze mensen weg te zetten als criminelen die er op uit zijn een bedrijf te verstoren. Dit is duidelijk niet het geval, deze groep wil juist graag dat het internet veiliger word. Dit soort groepen jagen b.v. ook op mensen die kinderporno aanbieden of credit card gegevens proberen te stelen. Astublieft bedrijven, overheid en mensen in de pers, probeer deze mensen te vriend te houden en probeer ze aan te moedigen dit werk op een goede en verantwoorde wijze te blijven doen. Ik zou zelfs de overheid willen vragen om zelf een aantal van dit soort mensen in dienst te nemen om audits bij bedrijven te doen om bijvoorbeeld dingen als vorig jaar met DigiNotar te voorkomen.
BlackhatsDit is de groep waar je je zorgen om moet maken en dit is ook de groep waar meestal naar verwezen word als de term Hacker gebruikt word. Dit zijn de mensen die hun brood verdienen met het stelen van data, sommige hiervan doen dit voor een overheid, de meeste doen dit met commerciële doelen. De commerciële doelen hierin zijn dingen zoals inbreken op een computer netwerk van een bedrijf en dan ontwerpen stelen en verkopen aan de concurentie, het stelen van bank gegevens voor fraudelente transacties en het stelen van persoonsgegevens voor marketing doeleinden of om valsheid in geschrifte te kunnen plegen of gewoon om te verkopen. Deze mensen moet je proberen op te sporen en aan te pakken, niet degene die keurig melden wat ze gedaan hebben en willen helpen om het veiliger te maken maar juist diegene die dat niet doen moet je opsporen, dit zijn de mensen die gewoon crimineel zijn zoals een inbreker een crimineel is. Dit zijn de mensen die niet zullen aarzelen om iemand zijn of haar bankrekening leeg te plunderen, dit zijn degene die mensen in de problemen brengen voor geldelijk gewin. En dat begint al op kleine schaal, een e-mail adres is zo een 3 US Dollar waard maar een e-mail adres wat gegarandeerd werkt is 7 US Dollar waard, weet je er ook nog een naam bij te vinden dan word het al 10 US Dollar. Dat zijn de prijzen die spammers betalen voor deze gegevens. Met een adres er bij verdubbelen deze prijzen en als er dan ook nog een bankrekening of een Facebook account of iets dergelijks bij zit word het nog veel lucratiever voor deze criminelen. Dus politie en justitie, dit is de groep waar je achter aan moet, niet de mensen die keurig melden dat iets niet veilig is maar juist deze mensen die niets melden maar er wel misbruik van maken.
Meer termenDan zijn er nog wat termen die in de media regelmatig verkeerd gebruikt worden:
De meeste mensen die gehacked zijn blijken een Trojan op hun pc te hebben. Trojans verspreiden zichzelf veelal via websites. Onder de meeste mensen leeft nog het idee dat je hier voor in de 'achterbuurten' van het internet moet zijn zoals porno sites of sites die illegale software aanbieden. Helaas is niets minder waar de laatste 10 jaar, juist die sites doen hun best om zich daar heel erg tegen te beschermen. De meest voorkomende manieren waarop nu Trojans verspreid worden is door in te breken op populaire websites en deze de Trojan te laten verspreiden, een andere populaire methode is om in te breken op een advertentie netwerk systeem wat een hele hoop sites heeft en hier door de Trojan te laten verspreiden. Indien er weer een nieuw lek zit in Windows word dit ook gretig aangegrepen om op korte termijn heel veel PC's van een Trojan te voorzien.
ErgernisMaar waarom nou dit stukje? Die ergernis over journalisten die incorrecte benaming gebruiken is slechts een klein deel van waarom ik mij ergers. Ten eerste word er te pas en te onpas geroepen door mensen dat ze gehacked zijn, ik word regelmatig gebeld door dit soort mensen die mij dan vragen om het voor hun uit te zoeken en er wat aan te doen. Meestal blijkt dan een van de volgende scenario's de oorzaak te zijn:
Er zijn natuurlijk nog legio andere oorzaken waardoor mensen denken dat ze gehacked zijn. Vrij zelden is dit echt het geval, meestal zijn het toch echt trojans die ergens bij mee zijn gekomen. Ik ga hier nu geen lezing geven over wat je hier tegen kunt en hoe je dit kunt voorkomen, de basis begint in ieder geval bij altijd goed lezen voor je bij een popup op ja of ok drukt. Eigenlijk is dit een onderwerp waar ik niet over uitgeschreven raak maar het ging vandaag om de terminologie, ik geloof dat ik die wel uiteen heb gezet in dit stukje. |
view"> As most of you probably have noticed I added a popular content block to the blogs and stories sections. This is a view which uses the internal Drupal counters to see which content is accessed most in the past day and which in total. Surprisingly enough these counters are wildly inaccurate because they count search engines as well! So on any given day my Facebook Denied blog is most popular because it has more links on this site leading to the item then most of my other blogs have. Of course this is not satisfactory because this makes the popular block worthless basically... I also got amazed at the amount of search engines indexing my website, there are a lot apparently! Even some Asian ones... So I guess I'll have to think about a carefully crafted robots.txt or a sitemap or some solution like that. Or find a way to filter the Drupal counters based on IP, however, the Drupal counters have no functionality for that as far as I know. If I Google this problem I get the recommendation to use a good stats program and not the Drupal counters |
view"> As you can see I was getting a bit tired of the old menu structure, the menu's were annoying on a mobile device and some became so long that my site re-sized to a height to accommodate the menu while the content ended like 400 pixels higher in some cases. The last thing was of course just me being a prick and wanting to have stuff perfect. So, while still in place the top menu doesn't expand anymore (except the home button for the and about/contact pages which no-one ever uses), this has become the main navigation menu which only contains links to the different content sections. Each content section got it's own menu on the left side which I build with the Views add on module Views Accordion. This module doesn't do everything the way I like but at least it comes close. I would like to be able to have two layers of collapsible items, this module only provides one. I might be able to work around that with a view in a view, but I will have to test this on a later date. Also, I find one thing confusing, you can set the view to open the active row basid on the url AND you can set a default. Opening the active row works like a charm, if you navigate to a blog the correct year/month expands nicely. However, if you navigate to one of the Blog Overview pages which aren't in the menu, ergo, it cannot open an active row, than it doesn't open the default row. I have set the default row to be Row 1, in the preview this is January. In the live site it suddenly is October 2013 ??? I really have no clue why this is or why this works badly. I will dig in to this also at a later date, now it is time to go to sleep. An alternative solution is using the JQuery Menu module for Drupal. I have tested this and it works nicely after some restyling. The only drawback I find is the menu sorting used by Drupal. This keeps forcing me to assign weights to each item and making sure they are displayed in the correct sequence and in general gives a few minutes of extra work with each item I add to this site. I have been looking for a module that allows menu sorting by publishing date or some other criteria, the only thing I found was taxonomy terms which is not really useful for a site like this one. I might switch to this module anyway later on because this will allow me to have the menu's collapse by year as well as by month which might actually be very nice in a few years from now. I just hope I can find some way to sort menu's easier so my content is always newest on top. I do like the way Views Accordion switches from one item to an other though, it's a very nicely done animation, haven't tested this with the JQuery Menu yet. |
view"> Yesterday I implemented the Rate module in Drupal 7 on this website. It is now possible to give a thumbs up or down for my blog, drawings and photo galleries. I have my doubts if people actually will use it, but hey, because we can we implement it This module will give a percentage of how many people liked or disliked something, when no one has voted yet it will default be 50% like and 50% dislike. If one person likes something it will be 100%/0%, two likes and one dislike will result in 66%/33%, etc... For the photo galleries the voting will be for the whole gallery and not the individual pictures, for drawings and sketches you will vote for the individual drawing or sketch. |
© Valheru 2001- - Powered by Drupal - Theme based on Creative Responsive Theme by Zymphonies