...
Code Block | ||||
---|---|---|---|---|
| ||||
import org.fabric3.api.Fabric3RequestContext; public class SecureRolesServiceImpl implements SecureService { @Context protected Fabric3RequestContext context; public void call() \{ SecuritySubject context.getCurrentSubject(); String userName = context.getUsername(); // iterate roles for (Role role: context.getRoles() { String roleName = role.getName(); } } } |
Simulating Authentication in Integration Tests
In integration test environments, it is often required to simulate authentication credentials. For example, a test client may need to supply credentials to authenticate with the secure service it tests. Fabric3 JUnit test components can be configured with authentication credentials, and those credentials propagated over a remote transport such as Web Services. The following shows how to simulate username/password credentials:
...
<component name="SecurityTest">
<f3:junit class="...">
<configuration>
<username>scott</username>
<password>wombat</password>
</configuration>
</f3:junit>
<reference name="service" target="SCASecureService"/>
</component>