accumulo security and encryption

42
Securely explore your data ENCRYPTION AND SECURITY IN ACCUMULO Michael Allen Security Architect Sqrrl Data, Inc. [email protected]

Post on 21-Oct-2014

1.044 views

Category:

Technology


6 download

DESCRIPTION

Speaker: Michael Allen, Security Architect, Sqrrl Venue: October 28th Accumulo Users Group (along with Strata NY / Hadoop World) The early Accumulo developers made security a core part of Accumulo's codebase. As the open source community around Accumulo continues to thrive, this talk examines the current state of Accumulo's security features. The talk will detail some exciting developments in the upcoming 1.6 release, which include enhancements around encryption at rest and in motion. We will also take a broader look at new use cases suggesting a wider set of threats, and how current and future work addresses those threats.

TRANSCRIPT

Page 1: Accumulo Security and Encryption

Securely explore your data

ENCRYPTION AND SECURITY IN ACCUMULO

Michael Allen

Security Architect

Sqrrl Data, Inc.

[email protected]

Page 2: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

ISN’T ACCUMULO ALREADY SECURE?

Page 3: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

I MEAN, THESE SMART GALS AND GUYS MADE IT…

(Undisclosed location)

So

urc

e:

wik

ipe

dia

.org

. P

ub

lic d

om

ain

Page 4: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

CELL-LEVEL SECURITY

Page 5: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

CELL-LEVEL SECURITY

Page 6: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

CELL-LEVEL SECURITY

Page 7: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

WHAT’S THE THREAT?

Page 8: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

A TYPICAL DEPLOYMENT

Page 9: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

A TYPICAL DEPLOYMENT

(…ignoring master nodes, name nodes,garbage collectors, other ephemera…)

Page 10: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

A TYPICAL CAST

Page 11: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

THREATS INSIDE AND OUT

Page 12: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

WHO CAN WE PUSH OUT?

Page 13: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

HOW?

Page 14: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

ENCRYPTION

Page 15: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

IN MOTION AND AT REST

Page 16: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

IT’S NOT…

So

urc

e:

htt

p:/

/bit.

ly/H

qS

cSr.

Cre

ativ

e C

om

mo

ns,

A

ttrib

utio

n.

Page 17: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

FUNDAMENTAL QUESTIONS

What are you encrypting?

How are you encrypting it?

How are you protecting the key?

Page 18: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

ACCUMULO 1.6

SSL for Accumulo Clients

Encrypting data within HDFS

Page 19: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

SSL AND ACCUMULO

ACCUMULO-1009

Patch that adds configuring and using SSL certificates

Page 20: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

MAKE YOUR CERTS

Page 21: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

CONFIGURE YOUR SERVERS

Page 22: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

CONFIGURE YOUR SERVERS

Page 23: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

DISTRIBUTE YOUR CERTS

Page 24: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

DISTRIBUTE YOUR ROOTS

Page 25: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

ENJOY YOUR SSL

Page 26: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

ENCRYPTION AT REST

ACCUMULO-998

Patch that adds encryption for Rfiles and WAL

Page 27: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

ENCRYPTION AT REST

Uses Java Cryptography Extensions (JCE) for encryption

interface / engine

(Guess what? It’s pluggable.)

Page 28: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

BEHIND THE SCENES

Page 29: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

BEHIND THE SCENES

Page 30: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

BEHIND THE SCENES

Page 31: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

BEHIND THE SCENES

Page 32: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

WHERE DOES THAT KEY GO?

Page 33: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

WHERE DOES THAT KEY GO?

Page 34: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

WHERE DOES THAT KEY GO?

???

Page 35: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

PLUGGABLE STRATEGY

• Java class that mediates access to KEK

• Encrypts and decrypts per-file keys

• Passes back to callers opaque ID to identifyKEK used to do encryption

• Callers should store opaque ID along withencrypted key

Page 36: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

PLUGGABLE STRATEGY

Page 37: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

PLUGGABLE STRATEGY

Page 38: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

CONFIGURATION OPTIONSProperty Name “Usual” Value Meaning

crypto.module.class org.apache.accumulo.core.security.crypto.DefaultCryptoModule

The class that creates encrypting and decrypting data streams

crypto.cipher.suite AES/CFB/PKCS5Padding Encryption algorithm spec

crypto.cipher.key.length

128 Key length

crypto.module.class org.apache.accumulo.core.security.crypto.DefaultSecret-KeyEncryptionStrategy

Class that mediates access to KEK

Page 39: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

REDUCED THREAT

Page 40: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

REDUCED THREAT

Page 41: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

TOWARDS THE FUTURE

Page 42: Accumulo Security and Encryption

© 2013 Sqrrl | All Rights Reserved | Proprietary and Confidential

[email protected]