Since I found my own question over and over in google while desperately
seeking for information here the solution how I did it:
1) create you Realm by deriving from AuthorizationRealm (or
AuthenticationRealm if that is all you need). There are plenty of examples -
you can all use them, they are not tapestry specific. Be sure to override
getName (so you know this value). I created a package named security with
all the stuff I needed for shiro in it (the place is really not important as
you work with IOC and only the name of the class is important).
2) weave the thing into you appModule:
:
public static void bind(ServiceBinder binder)
{
binder.bind(AuthorizingRealm.class,
MyRealm.class).withId(MyRealm.class.getSimpleName());
}
/* this will add your realm */
public static void contributeWebSecurityManager(Configuration<Realm>
configuration, @InjectService("MyRealm") AuthorizingRealm myRealm)
{
configuration.add(myRealm);
}
/* this will configure your realm - you can do this because of
tapestry-secruity */
public static void
contributeSecurityConfiguration(OrderedConfiguration<SecurityFilterChain>
configuration,
SecurityFilterChainFactory factory)
{
// OrderedConfiguration must be named, so they can be
overridden later
configuration.add("signup-anon",
factory.createChain("/authc/signup").add(factory.anon()).build());
}
--
Sent from: http://shiro-user.582556.n2.nabble.com/