79
AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1

AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICESScott Shaw Head of Technology, ThoughtWorks Australia

1

Page 2: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

MICROSERVICE ENVY

2

service oriented architecture

microservices

GOOGLE TRENDS DATA

Page 3: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

3

XTHE SPEED BUMPS

Page 4: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

3

XTHE SPEED BUMPS

DDD REST Automation Cloud DevOps Logging Monitoring

Resilience Testing with CDCs Conway Postel

Page 5: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

3

X

Data Aggregation

THE SPEED BUMPS

DDD REST Automation Cloud DevOps Logging Monitoring

Resilience Testing with CDCs Conway Postel

Page 6: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

3

X

Data Aggregation

Access Control & Security

THE SPEED BUMPS

DDD REST Automation Cloud DevOps Logging Monitoring

Resilience Testing with CDCs Conway Postel

Page 7: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

3

X

Managing Change

Data Aggregation

Access Control & Security

THE SPEED BUMPS

DDD REST Automation Cloud DevOps Logging Monitoring

Resilience Testing with CDCs Conway Postel

Page 8: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

4

Aggregating Data

Page 9: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

SINGLE DATASTORE PRINCIPAL

5

Page 10: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

SINGLE DATASTORE PRINCIPAL

5

Page 11: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

SINGLE DATASTORE PRINCIPAL

5

Page 12: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

6

BUT AS A SYSTEM EVOLVES…

Page 13: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

6

BUT AS A SYSTEM EVOLVES…

Page 14: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

6

BUT AS A SYSTEM EVOLVES…

Page 15: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

6

BUT AS A SYSTEM EVOLVES…

Page 16: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

6

BUT AS A SYSTEM EVOLVES…

Page 17: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

7

BUT AS A SYSTEM EVOLVES…

Page 18: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

7

BUT AS A SYSTEM EVOLVES…

Page 19: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

JIA YANG’S STORY

8

Page 20: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

JIA YANG’S STORY

8

Page 21: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

SIDEBAR: SERVICE COMPOSITION

9

Customers in the EC

tax regime

JOIN

Tax Regime Service

THE MONOLITHIC APPROACH

Page 22: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

SIDEBAR: SERVICE COMPOSITION

10

NAIVE SERVICE IMPLEMENTATION

geography

customers

tax

Countries in the EC

Customersin the EC

Page 23: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

Countries in the EC

SIDEBAR: SERVICE COMPOSITION

COMPOSED SERVICES

geography

customers

tax

Customers in the EC

GET …?country_list=UK,NL,SE...

Page 24: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

GET

Countries in the EC

SIDEBAR: SERVICE COMPOSITION

COMPOSED SERVICES

geography

customers

tax

Customers in the EC

GET … ?filter=https://geo/countries?r=ec

Page 25: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

Customers in the EC

Countries in the EC

AGGREGATING DATA

12

geography

customers

tax

Page 26: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

Customers in the EC

Countries in the EC

AGGREGATING DATA

12

geography

customers

tax

How do we knowif these states are consistent?

Page 27: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

AGGREGATING DATA

12

geography

customers

tax

How do we knowif these states are consistent?

Events to rescue!Reacts to

event streams

Changes incustomer status

Changes in EC Membership

Page 28: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

AGGREGATING DATA

13

geography

customers

tax

Page 29: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

AGGREGATING DATA

13

geography

customers

tax

GET https://integration-toolkit.com/customers/events

Page 30: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

AGGREGATING DATA

13

geography

customers

tax

GET https://integration-toolkit.com/customers/events

Page 31: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

IMPLEMENTING EVENTS

14

OPTION 1: CHUCK ‘EM IN THE DB

Page 32: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

IMPLEMENTING EVENTS

15

OPTION 2: HIPSTER BATCH

Shared Storage (S3)

Geography Customer

Tax

Page 33: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

IMPLEMENTING EVENTS

16

OPTION 3: SPECIAL-PURPOSE EVENT STORE

Event Store

JSCustomers

Geography

Event Subscription

Page 34: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

IMPLEMENTING EVENTS

16

OPTION 3: SPECIAL-PURPOSE EVENT STORE

Event Store

JSCustomers

Geography

Event Subscription“Projections”

Page 35: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

17

Delegated Authority & Access Control

Page 36: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

OpenID 2.0

DELEGATED ACCESS MANAGEMENT

18

HMAC

SAML v2 OAuth 2.0OpenID Connect

ADFSJWT

Page 37: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

OpenID 2.0

DELEGATED ACCESS MANAGEMENT

18

HMAC

SAML v2 OAuth 2.0OpenID Connect

ADFSJWT

Page 38: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

FENDY’S STORY

19

Page 39: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

FENDY’S STORY

19

Page 40: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

THE OLD WORLD OF PERIMETER SECURITY

20

cookietoken

credentials

token

verification

Identity Provider

End User Application

WebApplication

Page 41: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

THE OLD WORLD OF PERIMETER SECURITY

20

cookietoken

credentials

token

verification

Identity Provider

End User Application

WebApplication

stateless?

Page 42: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

THE OLD WORLD OF PERIMETER SECURITY

20

cookietoken

credentials

token

verification

Identity Provider

End User Application

WebApplication

stateless?

whose identity?

Page 43: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

THE OLD WORLD OF PERIMETER SECURITY

20

cookietoken

credentials

token

verification

Identity Provider

End User Application

WebApplication

token

token

Page 44: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

VARIOUS APPROACHES

▫︎ 2-Way SSL/TLS

▫︎HMAC signing

▫︎ JWT

▫︎NTLM/WIF/ADFS

▫︎ SAML v2

▫︎OAUTH 2.0

▫︎OPENID Connect

21

Page 45: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

VARIOUS APPROACHES

▫︎ 2-Way SSL/TLS

▫︎HMAC signing

▫︎ JWT

▫︎NTLM/WIF/ADFS

▫︎ SAML v2

▫︎OAUTH 2.0

▫︎OPENID Connect

21

Ask these questions ...

Page 46: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

VARIOUS APPROACHES

▫︎ 2-Way SSL/TLS

▫︎HMAC signing

▫︎ JWT

▫︎NTLM/WIF/ADFS

▫︎ SAML v2

▫︎OAUTH 2.0

▫︎OPENID Connect

21

Ask these questions ...• Considered both authentication

and authorisation?

Page 47: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

VARIOUS APPROACHES

▫︎ 2-Way SSL/TLS

▫︎HMAC signing

▫︎ JWT

▫︎NTLM/WIF/ADFS

▫︎ SAML v2

▫︎OAUTH 2.0

▫︎OPENID Connect

21

Ask these questions ...• Considered both authentication

and authorisation?

Page 48: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

VARIOUS APPROACHES

▫︎ 2-Way SSL/TLS

▫︎HMAC signing

▫︎ JWT

▫︎NTLM/WIF/ADFS

▫︎ SAML v2

▫︎OAUTH 2.0

▫︎OPENID Connect

21

Ask these questions ...• Considered both authentication

and authorisation?• Based on open standards?

Page 49: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

VARIOUS APPROACHES

▫︎ 2-Way SSL/TLS

▫︎HMAC signing

▫︎ JWT

▫︎NTLM/WIF/ADFS

▫︎ SAML v2

▫︎OAUTH 2.0

▫︎OPENID Connect

21

Ask these questions ...• Considered both authentication

and authorisation?• Based on open standards?

Page 50: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

VARIOUS APPROACHES

▫︎ 2-Way SSL/TLS

▫︎HMAC signing

▫︎ JWT

▫︎NTLM/WIF/ADFS

▫︎ SAML v2

▫︎OAUTH 2.0

▫︎OPENID Connect

21

Ask these questions ...• Considered both authentication

and authorisation?• Based on open standards?• Simple enough to be widely used?

Page 51: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

VARIOUS APPROACHES

▫︎ 2-Way SSL/TLS

▫︎HMAC signing

▫︎ JWT

▫︎NTLM/WIF/ADFS

▫︎ SAML v2

▫︎OAUTH 2.0

▫︎OPENID Connect

21

Ask these questions ...• Considered both authentication

and authorisation?• Based on open standards?• Simple enough to be widely used?• Supports a modern web integration

strategy?

Page 52: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

VARIOUS APPROACHES

▫︎ 2-Way SSL/TLS

▫︎HMAC signing

▫︎ JWT

▫︎NTLM/WIF/ADFS

▫︎ SAML v2

▫︎OAUTH 2.0

▫︎OPENID Connect

21

Ask these questions ...• Considered both authentication

and authorisation?• Based on open standards?• Simple enough to be widely used?• Supports a modern web integration

strategy?

Page 53: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

VARIOUS APPROACHES

▫︎ 2-Way SSL/TLS

▫︎HMAC signing

▫︎ JWT

▫︎NTLM/WIF/ADFS

▫︎ SAML v2

▫︎OAUTH 2.0

▫︎OPENID Connect

21

Ask these questions ...• Considered both authentication

and authorisation?• Based on open standards?• Simple enough to be widely used?• Supports a modern web integration

strategy?• Has proven implementations?

Page 54: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

VARIOUS APPROACHES

▫︎ 2-Way SSL/TLS

▫︎HMAC signing

▫︎ JWT

▫︎NTLM/WIF/ADFS

▫︎ SAML v2

▫︎OAUTH 2.0

▫︎OPENID Connect

21

Ask these questions ...• Considered both authentication

and authorisation?• Based on open standards?• Simple enough to be widely used?• Supports a modern web integration

strategy?• Has proven implementations?

Page 55: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

EXAMPLE OPENID CONNECT FLOW

22

access code

OpenID Connect Provider

Resource

access code

Another Resource

id token

{“iss":"op.example.com",! "c_hash":"HK6E_P6Dh8Y93mRNtsDB1Q",! "email_verified":"true",! "sub":"10769150350006150715113082367",! “azp”:”another_resource",! “email":"[email protected]",! “aud”:[”resource”, “another_resource”],! "iat":1353601026,! "exp":1353604926 }

access code

id token

Resource

Another Resource

End User App

Page 56: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

BEWARE PKI

23

ssshh!

secrets

How to manage anddistribute?

keys

Also Need

• CSRF • Nonce • Correct implementation

• Expire • Revoke • Distribute

Page 57: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

24

Managing Change

Page 58: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

MANAGING CHANGE

25

DOES YOUR SYSTEM LOOK LIKE THIS?

?

Page 59: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

MANAGING CHANGE

26

MAYBE IT SHOULD LOOK LIKE THIS INSTEAD

Page 60: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

MANAGING CHANGE

26

MAYBE IT SHOULD LOOK LIKE THIS INSTEAD

JUICE!

Page 61: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

RYAN’S STORY

27

Page 62: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

RYAN’S STORY

27

Page 63: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

BACK TO THE TAX EXAMPLE …

28

geography customers

tax

Page 64: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

BACK TO THE TAX EXAMPLE …

28

geography customers

tax

Page 65: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

BACK TO THE TAX EXAMPLE …

28

geography customers

tax

Page 66: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

BACK TO THE TAX EXAMPLE …

28

geography customers

tax

Assignment

Page 67: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

BACK TO THE TAX EXAMPLE …

28

geography customers

tax

Assignment

Some logic from here

Some logic from here

And fromhere

Page 68: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

BACK TO THE TAX EXAMPLE …

28

geography customers

tax

Assignment

Some logic from here

Some logic from here

And fromhere

But How?

Page 69: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

HOW TO MANAGE THE CHANGE

29

1.DO NOTHING May be better than the chaos of not having clear ownership and accountability

2.ONE BIG VERSION CHANGEVersion all your services, test them together, release them together

Page 70: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

HOW TO MANAGE THE CHANGE

29

1.DO NOTHING May be better than the chaos of not having clear ownership and accountability

2.ONE BIG VERSION CHANGEVersion all your services, test them together, release them together#fail

Page 71: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

MANAGING CHANGE

30

geo cust

tax

assignment

Page 72: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

MANAGING CHANGE

30

geo cust

tax

assignment

Temp Team

Page 73: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

MANAGING CHANGE

31

geo cust

tax

assignment

?

Page 74: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

MANAGING CHANGE

31

geo cust

tax

assignment

Long-term ownershipcan’t be ambiguous

Page 75: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

SUMMARY

32

1.MICROSERVICES More than a grab-bag of techniques and tools

2.MINDSET SHIFTState Perimeter Punctuated equilibrium

EventsEndpointsContinuous evolution

Page 76: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

SUMMARY

32

1.MICROSERVICES More than a grab-bag of techniques and tools

2.MINDSET SHIFTState Perimeter Punctuated equilibrium

EventsEndpointsContinuous evolution

Page 77: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

SUMMARY

32

1.MICROSERVICES More than a grab-bag of techniques and tools

2.MINDSET SHIFTState Perimeter Punctuated equilibrium

EventsEndpointsContinuous evolution

Page 78: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

SUMMARY

32

1.MICROSERVICES More than a grab-bag of techniques and tools

2.MINDSET SHIFTState Perimeter Punctuated equilibrium

EventsEndpointsContinuous evolution

Page 79: AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES · 2019-09-23 · AVOIDING SPEED BUMPS ON THE ROAD TO MICROSERVICES Scott Shaw Head of Technology, ThoughtWorks Australia 1. MICROSERVICE

33

THANKS!

http://www.thoughtworks.com/radar [email protected]

@scottwshaw