Testing auto-configurations with Spring Boot 2.0

Engineering | Madhura Bhave | March 07, 2018 | ...

Auto-configuration is one of the most powerful features of Spring Boot. Tests for auto-configuration classes usually follow the same pattern. Most tests start up an ApplicationContext with the auto-configuration class under test and depending on the test, also load additional configuration to simulate user behavior. The recurrence of this pattern can add a lot of repetition in the code base.

Spring Boot 2.0 provides a suite of new test helpers for easily configuring an ApplicationContext to simulate auto-configuration test scenarios. The following example configures an ApplicationContextRunner to test the UserServiceAutoConfiguration

Security issue in Spring Data REST (CVE-2017-8046)

Engineering | Oliver Drotbohm | March 06, 2018 | ...

Last fall, a security vulnerability affecting Spring Data REST was discovered. We patched the affected modules and published a CVE. We've seen some recent news about this that's led to confusion. Here's the scoop:

tl;dr:

  • There was a security vulnerability allowing arbitrary code execution in Spring Data REST up to version 2.6.8 and 3.0.0.
  • This vulnerability has been fixed in the following versions:

-- Spring Data REST 2.6.9 (Ingalls SR9, Oct. 27th, 2017), included in Spring Boot 1.5.9 (Oct, 28th 2017). -- Spring Data REST 3.0.1 (Kay SR1, Oct. 27th 2017), included in Spring Boot 2.0 M6, (Nov…

Using Spring Security 5 to integrate with OAuth 2-secured services such as Facebook and GitHub

Engineering | Craig Walls | March 06, 2018 | ...

One of the key features in Spring Security 5 is support for writing applications that integrate with services that are secured with OAuth 2. This includes the ability to sign into an application by way of an external service such as Facebook or GitHub.

But with a little bit of extra code, you can also obtain an OAuth 2 access token that can be used to perform authorized requests against the service’s API.

In this article, we’re going to look at how to develop a Spring Boot application that, using Spring Security 5, integrates with Facebook. You can find the complete code for this article at https://github.com/habuma/facebook-security5

This Week in Spring - Tuesday March 6th, 2018

Engineering | Josh Long | March 05, 2018 | ...

Hi Spring fans and welcome to another installment of This Week in Spring! As I write this it's early morning Tuesday in Sydney, Australia, where I've been visiting with some of Pivotal's amazing customers, and I'm now preparing for my flight to Dubai, in six short hours, where I'll visit some more of Pivotal's amazing customers. Later this week I'll be in Bangalore, India, for the amazing Agile India conference, and then - early next week on Tuesday - I'll be in Boston, MA for the first SpringOne Tour event. If you're around don't hesitate to say hi, as usual!

This week we've got a lot of…

Spring Security SAML Roadmap

Engineering | Rob Winch | March 05, 2018 | ...

The Spring Security SAML project has been an integral part of the Spring ecosystem since its inception nearly 9 years ago. This critically important project was born through the incredible effort and contributions of Vladimír Schäfer. I’d like to take the time to personally thank Vladimír and our fantastic community for their tireless work. Without all of their efforts, this project would not be what it is today.

Vladimír, our amazing community, and the Spring engineering team are planning to team up to enhance Spring Security SAML to achieve the following primary goals:

  • Ensuring all dependencies are up to date

  • Ensure all Spring Security APIs do not expose any dependency APIs

  • Graduate Spring Security SAML from an extension into Spring Security proper

Spring Security SAML and this week's SAML Vulnerability

Engineering | Rob Winch | March 01, 2018 | ...

This week, the software world found out that SAML Vulnerabilities Affecting Multiple Implementations were discovered. If you use Spring Security SAML’s defaults, you are not impacted by this vulnerability.

The underlying implementation that Spring Security SAML uses is Shibboleth’s OpenSAML Java library. The OpenSAML Java implementation was not listed in the libraries that contain the vulnerability (Shibboleth openSAML C++ was vulnerable). However, if the ParserPool has been customized, you may be impacted.

NOT Safe Configurations

Specifically, if the application explicitly sets the BasicParserPool or the StaticBasicParserPool to have ignoreComments = false, it is vulnerable to the…

This Week in Spring - February 27th, 2018

Engineering | Josh Long | February 28, 2018 | ...

Hi Spring fans and welcome to another installment of Spring Tips! This is a super exciting week! Spring Boot 2.0 is coming! Keep your eyes on the Spring Initializr or you'll miss it! :D

Today I was at the Okta Iterate conference talking to developers who are using Spring and Okta, thanks to my buddy Matt Raible. High point? I got to meet Jeff Atwood, the co-creator of Stack Overflow!

Tomorrow, I begin a whirlwind tour over the next two weeks. First, it's off to Glasgow, Scotland; then Sydney, Australia; then Dubai; then Bangalore, India (for Agile India 2018); and then it's off to Boston, Massachusetts for the SpringOne Tour event on March 13th. If you're in any of those places, don't hesitate to reach out

Spring Cloud Stream 2.0 - Polled Consumers

Engineering | Gary Russell | February 27, 2018 | ...

This is the second blog in a series of pre-release blogs in preparation for Spring Cloud Stream 2.0.0.RELEASE.

Preface

Spring Cloud Stream 2.0 introduces polled consumers, where the application can control message processing rates.

Introduction

Spring Cloud Stream has the concepts of producers and consumers; when using the messaging paradigm, MessageChannels are bound to destinations (e.g. Kafka topics, Rabbit Exchanges/Queues). To-date, on the consumer side, messages are delivered whenever an idle consumer is available. In effect, the broker controls the rate of delivery; usually, the next…

Spring Cloud Stream 2.0 - content-type negotiation and transformation

Engineering | Oleg Zhurakousky | February 26, 2018 | ...

This is the first blog in a series of pre-release blogs in preparation for Spring Cloud Stream 2.0.0.RELEASE.

Preface

Spring Cloud Stream 2.0 includes a complete revamp of content-type negotiation for the channel-based binders to address performance, flexibility and most importantly consistency. The following blog touches on some of the key points around what has been done, what to expect and how it may help you.

Introduction

Data transformation is one of the core features of any message-driven microservice architecture. In Spring Cloud Stream, such data is represented as a Spring Message.

Get the Spring newsletter

Stay connected with the Spring newsletter

Subscribe

Get ahead

VMware offers training and certification to turbo-charge your progress.

Learn more

Get support

Tanzu Spring offers support and binaries for OpenJDK™, Spring, and Apache Tomcat® in one simple subscription.

Learn more

Upcoming events

Check out all the upcoming events in the Spring community.

View all