Thursday, May 24, 2018

3 day coding challenge - Implementing MySQL Admin in ASP.NET

Tired of explaining why Phosphorus Five is good, I created a "3 days coding challenge", where my objective was to create something highly useful, replacing something that didn't exist (in a good implementation at least), while adding new features, which I find useful myself - And I created a web based and highly secure alternative to PHPMyAdmin, and I implemented it in Phosphorus Five, which is an ASP.NET Framework.

For those interested in seeing what it can do, after only 3 days of development, feel free to watch the following 3 minutes long video ...

https://www.youtube.com/watch?v=sJzU-N1Qjk8

It features AutoCompletion on keywords, tables and columns - Plus syntax highlighting of your SQL. It's extremely secure, allowing for authentication and authorization, with all the security things you can imagine, such as server-side salted hashed passwords, easily controlling access to the system based upon user's role, guards against HTML injection (HTML encodes records before displaying them in its UI), doesn't allow the user to connect to a database server not declared in its web.config - Which is protected and only accessible for "root" accounts, etc, etc, etc.

And it installs on an Apache/Linux box in 5 minutes, patching it, automatically installing SSL keypairs, auto-updating these every 90 days, shuts down all ports except 80, 443 and 22 (SSH), etc, etc, etc, etc ...

One of my primary motives for choosing to build this particular system, was the fact that my Apache logs are cluttered with literally thousands of daily HTTP Requests, trying to gain access to PHPMyAdmin (which I thank you God never has fallen for the temptation of actually installing on my box) - Which I guess is a testimonial towards how secure PHPMyAdmin is ...

Another of my motivations, was that I accidentally resized my output window in MySQL Workbench, some 3 months ago, and I could never figure out how to display it again ... (!!)

A third motivation, was because I wanted to have secure access to my local MySQL database, over my phone. The thing renders (of course) perfectly "responsively", and is built with the "mobile first" approach. It consumes ridiculously small amounts of bandwidth. Besides from CodeMirror, which ticks in at some roughly 3-400 KB, it only consumes 5.7KB of JavaScript, and roughly 100Kb of "other things".

So it should load at least 5-25 times as fast over a slow connection as (for instance) GMail or Twitter does.

Download the goods here (it's Open Sauce, but P5 comes with professional support for those interested)

https://github.com/polterguy/phosphorusfive

3 day coding challenge - Implementing MySQL Admin in ASP.NET Click here
  • Blogger Comment
  • Facebook Comment

0 comments:

Post a Comment

The webdev Team