@Produces
    @NoSessionCreation
    @RequestScoped
    public static Session getSessionNoCreation() {
        return Optional.ofNullable(SecurityUtils.getSubject().getSession(false))
                .orElseThrow(InvalidSessionException::new);
    }
Exposes Shiro's SecurityManager, Session and Subject via CDI @Inject
support/cdi/src/main/java/org/apache/shiro/cdi/ShiroComponentProducer.java