Author Archives: mike

Erste Termine für 2007

Die ersten Termine für 2007 stehen jetzt fest:

Der Auftakt findet diesemal bei den Entwicklertagen vom 26.02.07 bis 02.03.07 in Frankfurt-Mörfelden statt. Hier halte ich am 02.03.07 einen 1-tägigen Workshop mit dem Titel “Advanced Spring Security mit Acegi, AspectJ und CAS“. Dabei werde ich praxisnah die Grundlagen von Spring Security (auch bekannt als Acegi-Framework) erläutern, aber auch weiterführende Themen wie Single-Sign-On mit CAS und das Zusammspiel mit AspectJ behandeln. Natürlich wird es auch einen Ausblick auf die Version 1.1.0 geben.

Weiter geht es dann auf der JAX 2007 in Wiesbaden, die diesmal schon einen Monat früher stattfindet, nämlich vom 23.04.07 bis 27.04.07. Dort findet bereits zum dritten Mal der Spring Day am 23.04.07 statt, mit Themen wie Spring & OSGI, Domain-Driven Design, Spring und MDA und auch ein Vortrag von mir über Spring Security. Dabei werden die Grundlagen des Frameworks zu den Themen Web Security, Service Layer Security und Authentifizierung gezeigt.

Im Hauptprogramm der JAX gibt es dann noch einen Vortrag von mir mit dem Titel “Acegi without Spring: Die neue Sicherheitsplattform für Java“. Hier geht es darum das Acegi-Framework als allgemeine Sicherheitsplattform darzustellen. Der Einsatz beschränkt sich nämlich nicht nur auf Spring-Anwendungen sondern es kann vielmehr für nahezu jede Java-Anwendungen eingesetzt werden und bietet im Vergleich zu JAAS deutlich mehr Möglichkeiten und Komfort. Sozusagen Ease of Security. Hier werden also nicht die Grundlagen erzählt sondern anhand von kleinen Beispielen die verschiedenen Einsatzzwecke vorgeführt.

Weiter Termin stehen hier.

3 Dinge über mich…

… die bisher wohl niemand kannte (und niemand kennen will), darf ich nun dank Eberhard hier erzählen:

  • Mein erster eigener PC war der direkte Vorgänger des iMacs ;-) : Der Schneider Joyce oder auch bekannt unter Amstrad PCW, was allerdings hauptsächlich daran lag das ich zu dem Zeitpunkt gerade bei Schneider gearbeitet hab und daher günstig an die Hardware kam.
  • Ich war 1997 bei der Loveparade in Berlin als Lichttechniker mit dabei, was man ansich ja nicht verschweigen müsste, wenn es halt nicht der Marienhof-Wagen gewesen wäre. Spaß hat’s trotzdem gemacht!
  • Obwohl ich selbst gerade ein Buch schreib und auch während der Arbeit öfter mal mein Wissen verewigen darf, lese ich private viel lieber mit dem Kopfhörer. Im Moment Die Anstalt von John Katzenbach.

Der Stab geht jetzt weiter an Frank, Peter und Clemens. Viel Spaß!

Umfrage zu Security APIs

In der linken Sidebar steht jetzt eine Umfrage welche Security API bzw. welches Security Framework in den Projekten genutzt wird. Leider kann das Plugin keine Mehrfachauswahl, daher bitte das Framework auswählen was den größten Anteil ausmacht.

Vielen Dank!

P.S.: Mit EJB/Web Container Managed sind EJB Security Constraints bzw. URI-Filter mit Hilfe eines Application Servers/Web Containers gemeint.

Nachtrag: Die Umfrage ist beendet, das Ergbenis ist hier zu finden.

Nach der W-JAX ist vor der JAX

Die W-JAX war mal wieder ein voller Erfolg. Erstmals waren über 750 Teilnehmer da und auch der erste Spring Day in München war gut besucht. Da ich diesmal viel auf dem SOFTCON-Stand war konnte ich nur wenige Sessions besuchen, aber die Gespräche waren dafür umso interessanter.

Jetzt geht es allerdings schon wieder mit der Planung für die JAX los, bei der aus auch wieder einen Spring Day geben wird, allerdings mit einigen Neuerungen. Hier können auch noch bis morgen (17.11.2006) Vorschläge unter http://www.jax.de/input eingereicht werden.

Security beim W-JAX Ballroom

Dieses Jahr findet auf der W-JAX am Dienstagabend das erste Mal der W-JAX Ballroom statt. Dazu werden im großen Ballsaal Tische zu verschiedenen Themen wie Web 2.0, JSF, Security, Eclipse und viele mehr aufgestellt. Die Tische werden von einem oder mehreren Speakern betreut, die die Diskussionen moderieren und für Fragen zur Verfügung stehen. Eine ideale Gelegenheit also den Konferenztag in lockerer Atmosphäre ausklingen zu lassen.

Ich werde zusammen mit Bruce Sams den Security-Tisch betreuen und freue mich jetzt schon auf interessante Gespräche.

XAP – extensible ajax platform

Im Apache incubator (der Brutstätte neuer OSS-Projekte) befindet sich seit einiger Zeit das XAP-Projekt. Ziel des Projekts ist eine Plattform für AJAX-Anwendungen zu schaffen, bei der die Oberfläche nicht mit HTML und JavaScript gestaltet wird, sondern per XML (genauer gesagt XAL) definiert wird. In dem XAL können dann auch Eventhandler angelegt werden, die auf JavaScript-Funktionen verweisen.

Aus der XAL-Definition erzeugt XAP dann mithilfe des Dojo-Toolkits eine AJAX-Oberfläche. Ab hier können dann per JavaScript die Dojo-Funktionen benutzt werden und so die Oberfläche verändert werden. Allerdings bietet XAP auch die Möglichkeit während der laufenden Anwendungen das zugrunde liegende XAL (also die Oberflächendefinition) dynamisch mittels XModify zu verändern. So muss man also nicht unübersichtliche JavaScript-Funktionen schreiben sondern kann in der gleichen Sprache wie die Oberfläche definiert wurde diese auch wieder verändern. Der XModify-Code kann dabei von dynamischen Seiten (z.B. PHP, JSP, Struts, …) erzeugt werden.

Im einfachsten Fall besteht ein Eventhandler dann aus nur einem Statement:

service.retrieveAndProcess(‘update.php’);

Die Datei update.php liefert dann folgendes:

<xal xmlns=”http://www.openxal.org/xal”>
<xm:modifications xmlns:xm=”http://www.openxal.org/xmodify”>
<xm:set-attribute select=”/xal/label”><xm:attribute name=”text” value=”Das kommt vom Server!”/></xm:set-attribute>
</xm:modifications>
</xal>


Dabei wird per XPath ein Label selektiert und das Attribut text auf den Wert “Das kommt vom Server!” geändert. Die JavaScript-Lösung dazu würde folgendermaßen aussehen:

var ui = session.getDocumentContainer().getUiDocument()
var el = ui.getElementById ( “label”);
el.setAttribute ( “text”, “Das kommt vom Server!” )

Der Client kann dies dann mit folgenden Statements einbinden:

var result = service.retrieve (‘jsupdate.php’);
eval ( result.responseText );

Die XML-Lösung hat dabei den Vorteil, das mit XPath eine deutlich mächtigere Sprache zur Verfügung steht um Element in der UI zu selektieren als dies JavaScript mit seinem DOM-Tree anbietet. Mit XModify können natürlich nicht nur Attribute geändert werden sondern auch komplett neue Bereiche hinzugefügt werden, und das mit der gleichen Syntax wie die statische Oberfläche definiert wurde. Ein weiter Vorteil ist auch, das man sich bei der Verwendung von XML nicht auf JavaScript festlegt und so später auch die Möglichkeit hat, auf eine andere Client-Plattform wie z.B. Java oder .NET wechseln.

XAP bietet also eine hohe Abstraktion von AJAX- bzw. Web2.0-Anwendungen, lässt aber trotzdem die freie Wahl bei der verwendeten Servertechnologie, im Gegensatz zu GWT, JSF+AJAX. Hinter dem Projekt steht übrigens die Firma Nexaweb, welche mit der Nexaweb Platform eine kostenpflichtige Enterprise Web 2.0 Plattform für Rich Internet Applications (RIA) anbietet. Derzeit kommt hier Java (aRex) als Clienttechnologie zum Einsatz. XAP soll dann als Basis für eine kommerzielle AJAX-Oberfläche (jRex) dienen, sodass also von einer zügigen Weiterentwicklung auszugehen ist.

Informationen zu Nexaweb und zu XAP gibt es übrigens auch bei der W-JAX 2006 auf dem gemeinsamen Messestand von SOFTCON und Nexaweb.

Acegi 1.0.2 fertig

Etwas verspätet hier noch die Nachricht das das Acegi Security Framework for Spring nun in der Version 1.0.2 erschienen ist.

Dabei wurden unter anderem Bugs bzgl. CAS, EH-CACHE und der URL-Filterung behoben. Das komplette Changelog kann hier eingesehen werden.

Bereits in der 1.0.1 wurde ja die Unverträglichkeit mit Spring 1.2.8 beseitigt.

Vorallem wegen dem Bug bei der URL-Filterung sollte bei Webanwendungen auf jeden Fall ein Update auf die 1.0.2 erfolgen.