Integration

Summit Live Blog: Middleware security: Authentication, authorization, and auditing services

As you would expect, security is a key focus for Red Hat.  Secure by default is more than a goal, it is a guiding principle across all product lines.  Middleware is no exception and there are some amazing things going on in this space. Divya Mehra and Vikas Kumar of Red Hat walked us through some of the recent innovations, including the recently released Red Hat SSO, product built upon KeyCloak. Derek Walker of SWIFT also spoke about how the leading financial system message broker relies upon JBoss Fuse for secure messaging.

Security is one of the most important topics in computing today, it can be separated into three key pillars and further mapped into middleware features:

  • Confidentiality
    • Authentication
    • Authorization
  • Integrity
    • Audit logging
    • non-repudiation
  • Availability
    • Clustering
    • Guaranteed Delivery

In short, Red Hat JBoss Middleware is secure and open source throughout the entire product line, giving customers increased assurances, such as:

  • Known, fully open source components
    • built securely from source
  • Proactive security notifications and fixes
  • Standards-based
    • OpenJDK
    • SAML 2.0, Kerberos, OpenID Connect
    • TLS, WS-security

Red Hat SSO is the newest member of this product line, providing a brand new server for complete identity management federation:

  • SAML 2.0
  • OpenID Connect
  • OAuth 2.0

It also comes with client adapters, allowing customers to easily integrate their applications with Red Hat SSO or other standard-compliant identity provider.

Red Hat SSO server is a complete, stand-alone product and is Red Hat’s solution for web-based federation.  It can interface with Red Hat Identity Management (IdM) for integration with internal corporate identity management.  It can also work with Active Directory and plain LDAP.  There is native OpenStack and OpenShift integration with Red Hat SSO coming down the line as well.

Continue reading “Summit Live Blog: Middleware security: Authentication, authorization, and auditing services”

Share

DevNation Live Blog: Drools 7.X Happenings and Roadmap

Drools is an open source rules expert engine and today the Drools co-founder and platform architect Mark Proctor from Red Hat gave an overview of the future of the KIE (Knowledge Is Everyhting) family. I’ll cover only a subset of what Mark covered, be sure to check out his slide deck for more details.

UI and UX

With the recent addition of a dedicated User Experience and Design (UXD) team and full adoption of PatternFly for consistent and polished theming the UI is looking better than ever. The UXD team has been working on creating personas for different use cases ranging from  developers to project managers. The latest release will be targeting GWT 2.8 which will continue to bring outstanding efficiency in designing the frontend to the primarily Java based team. The Errai framework built on top of GWT brings extended benefits to the ecosystem rounding out some of GWT’s rough edges. Uberfire will continue to be used and enhanced to provide perspectives, screens, page composition, security, permissions and more on top of Errai to help Business Central provide a rich user interface and experience.

Bootstrap grid views for building custom forms brings responsiveness and consistent styling to your task forms. This allows for stylized user interfaces to be developed and maintained within the system and used for process and rule interaction.

Deployment

In the upcoming release of Drools you will be able to deploy applications directly to target environments such as OpenShift and WildFly. This allows your application with minimal code, which can now be comprised of just some Data Models and forms, to run directly on OpenShift or WildFly with no extra configuration! KIE will create all the glue code and use your custom forms to create and deploy a webapp. Look to more automatic application generation features coming in the future.

Engine Enhancments

The engine enhancement that Mark covered are numerous and broad in coverage, I won’t try to enumerate them all here. Two that stood out to me are the aggregate decision tables and thread safety updates. A new decision table editing UI has been created that will infinitely scale and can even compose decision tables to represent more complex rules than ever before.

In previous versions of Drools, there existed a lot of synchronization code in many places and behavior was unreliable. To address this the team has re-factored the main engine and introduced a state machine at its core. This allowed one point of synchronization (a propagation queue) which simplifies the design and even added some performance benefits.

Continue reading “DevNation Live Blog: Drools 7.X Happenings and Roadmap”

Share

DevNation Live Blog: Open source IoT gateway: A tale of Eclipse Kura, Apache Camel, and RHIoT

At DevNation, Red Hat developer Henryk Konsek, gave a talk on an open source gateway for Internet of Things (IoT), using Apache Camel, Eclipse Kura, Much of the focus of the talk was on the scalability needed when IoT is really embraced by organizations. The key take away from the talk is that IoT in reality is all about messaging. Successful implementations will rely on the things we’ve already learned from Enterprise Integration Patterns (EIP).

Continue reading DevNation Live Blog: Open source IoT gateway: A tale of Eclipse Kura, Apache Camel, and RHIoT

Share

Create Resilient Camel applications with Hystrix

Apache Camel is a mature integration library (over 9 years old now) that implements all the patterns from Enterprise Integration Patterns book, but Camel is not only an EIP implementation library, it is a modern framework that constantly evolves, adds new patterns and adapts to the changes in the industry.

Apart from tens of connectors added in each release, Camel goes hand-in-hand with the new features provided by the new versions of Java language itself and other Java frameworks. With time some architectural styles such as SOA and ESB lose attraction and new architectural styles such as REST, Microservices get popular.

To enable developers do integrations using these new trends, Camel responds by adding new DSLs such the REST DSL and new patterns such as the Circuit Breaker, and components such as Spring Boot, and that’s not all and we are nowhere near done. With technologies such as linux containers and Kubernetes, the IT industry is moving forward even faster now, and Camel is evolving in order to ease the developers as it always has been.

Continue reading “Create Resilient Camel applications with Hystrix”

Share

JBoss Fuse Tooling – Camel File Validation – Existing, Improved and New

Red Hat JBoss Fuse is an open source, lightweight and modular integration platform that allows you to connect services and systems across your entire application portfolio. And if you’re familiar with Fuse, you’re probably familiar with the Fuse Tooling that comes with Red Hat JBoss Developer Studio.

As I mentioned in this earlier post, the 8.0.0.Beta2 version of JBoss Fuse Tooling is available. In this article I will cover another new and updated feature: validations. I will explain what was already available and what’s new which improves productivity.

Continue reading “JBoss Fuse Tooling – Camel File Validation – Existing, Improved and New”

Share

JBoss Fuse Tooling – Support of Global configurations

Red Hat JBoss Fuse is an open source, lightweight and modular integration platform that allows you to connect services and systems across your entire application portfolio. And if you’re familiar with Fuse, you’re probably familiar with the Fuse Tooling that comes with Red Hat JBoss Developer Studio.

As I mentioned in an earlier post, the 8.0.0.Beta2 version of JBoss Fuse Tooling is now available. Apart from the diagram tooling rework, there is yet another new, awaited feature. You can find it in the new “Configurations” editor — designed to manipulate global configurations, i.e. elements defined at the Camel context scope.

Continue reading “JBoss Fuse Tooling – Support of Global configurations”

Share

JBoss Fuse Tooling – Diagram reworked: New shiny colors! (and more)

If you are a developer working on integration projects with JBoss Fuse, you’ll be happy to hear that the Fuse tooling has recently been reworked to provide a brighter look and feel, a more sensible, approachable automatic layout.

The work is still in progress, but already available in beta. It can be installed into the new JBoss Developer Studio version 9.1.0.GA.

To check out the latest features, please install the latest JBoss Developer Studio (available here). Then follow the steps below (see screenshot for reference) to add JBoss Fuse Tooling 8.0 Beta 2.

Continue reading “JBoss Fuse Tooling – Diagram reworked: New shiny colors! (and more)”

Share

Persistent Custom MDC Logging in Apache Camel

Logging is an ubiquitous need in any production quality application, and one common scenario is to log the active (logged in) username, or to log the user and order IDs for customer order event details. This is typically done to create an audit trail so that issues can be more easily traced should something go wrong, but there are any number of reasons why you might decide to create a custom log.

Mapped Diagnostic Contexts (MDCs) in Apache Camel are great for creating custom logging statements, and will easily meet our needs for these use cases.  MDC is offered by both slf4j and log4j, and is also supported by JBoss Logging. (Apache Camel is a part of the Red Hat JBoss Fuse integration platform.)

In addition, you can use something like GELF to automatically index any MDC, thus allowing them to be easily searched using ElasticSearch (logging configuration is not required for this feature), so there are a few reasons why this might be an appealing solution.

This article will demonstrate how to set up MDC to perform custom logging.

Continue reading “Persistent Custom MDC Logging in Apache Camel”

Share

Building JBoss Projects with PatternFly and AngularJS

Recently I’ve been looking into different UI tech in use for apps built onPatternFly Logo top of Red Hat middleware, and I’ve discovered that many of Red Hat’s products use PatternFly (in differing capacities) for their administrative UIs. PatternFly is “A community of designers and developers collaborating to build a UI framework for enterprise web applications.” (from the website). There are also components, directives, etc, for AngularJS projects (which I really like).

This sounds awesome, particularly because I’m a terrible designer, so I thought I’d take a crack at converting an existing demo to use PatternFly, and along the way learn more about the framework and its best practices. These are concepts you can use in your own projects when building JS-heavy projects using Maven (which has about a billion ways to do things).

You can find the demo on jbossdemocentral, along with instructions for building it. In this article, I will describe some of the highlights of what I learned.

Continue reading “Building JBoss Projects with PatternFly and AngularJS”

Share