shh, keep your secrets in azure applicationsazure key vault •securely store secrets •accessible...

13
Shh, Keep Your Secrets in Azure Applications Matt Milner @milnertweet

Upload: others

Post on 14-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Shh, Keep Your Secrets in Azure ApplicationsAzure Key Vault •Securely store secrets •Accessible at deployment and/or runtime •Permissions-based access. Demo: Key Vault Basics

Shh, Keep Your Secrets in Azure Applications

Matt Milner@milnertweet

Page 2: Shh, Keep Your Secrets in Azure ApplicationsAzure Key Vault •Securely store secrets •Accessible at deployment and/or runtime •Permissions-based access. Demo: Key Vault Basics

Matt Milner• Independent Consultant• Pluralsight Author

Page 3: Shh, Keep Your Secrets in Azure ApplicationsAzure Key Vault •Securely store secrets •Accessible at deployment and/or runtime •Permissions-based access. Demo: Key Vault Basics

What are secrets

• Keys• Certificates• Passwords

Page 4: Shh, Keep Your Secrets in Azure ApplicationsAzure Key Vault •Securely store secrets •Accessible at deployment and/or runtime •Permissions-based access. Demo: Key Vault Basics

Troubles with secrets

• Don’t put them in your code!– Ok, config.

• Don’t put them in your configuration files!– Ok, set at deployment

• Don’t store them in your deployment files!– ARGhhhHH!

• But Matt, what about ASP.Net Core Secrets files??!!

Page 5: Shh, Keep Your Secrets in Azure ApplicationsAzure Key Vault •Securely store secrets •Accessible at deployment and/or runtime •Permissions-based access. Demo: Key Vault Basics

Azure Key Vault

• Securely store secrets • Accessible at deployment and/or runtime• Permissions-based access

Page 6: Shh, Keep Your Secrets in Azure ApplicationsAzure Key Vault •Securely store secrets •Accessible at deployment and/or runtime •Permissions-based access. Demo: Key Vault Basics

Demo: Key Vault Basics

• Create vault• Create secret• Read secret

Page 7: Shh, Keep Your Secrets in Azure ApplicationsAzure Key Vault •Securely store secrets •Accessible at deployment and/or runtime •Permissions-based access. Demo: Key Vault Basics

Demo: Accessing key vault secrets

• Show code model in asp.net• Show configuration model – easier• What about permission to keys?

Page 8: Shh, Keep Your Secrets in Azure ApplicationsAzure Key Vault •Securely store secrets •Accessible at deployment and/or runtime •Permissions-based access. Demo: Key Vault Basics

Managed Identities

• Run your code as an Azure AD identity– Simplifies permissions

• RBAC in Azure for resources– Scope access effectively

Page 9: Shh, Keep Your Secrets in Azure ApplicationsAzure Key Vault •Securely store secrets •Accessible at deployment and/or runtime •Permissions-based access. Demo: Key Vault Basics

Demo: Web App with Managed Principal

• Running application without managed principal– Code fails to read the secret

• Setup application with managed identity– Create identity– Set for web app– Give key vault permissions to the identity

Page 10: Shh, Keep Your Secrets in Azure ApplicationsAzure Key Vault •Securely store secrets •Accessible at deployment and/or runtime •Permissions-based access. Demo: Key Vault Basics

ARM Templates

• Create Key Vault Resources• Reference Secrets in ARM templates

– Enable vault for template deployments• Reference Certificates for App Service

Page 11: Shh, Keep Your Secrets in Azure ApplicationsAzure Key Vault •Securely store secrets •Accessible at deployment and/or runtime •Permissions-based access. Demo: Key Vault Basics

Where Else Can I use Key Vault

Azure Disk Encryption SQL Server AKS

Page 12: Shh, Keep Your Secrets in Azure ApplicationsAzure Key Vault •Securely store secrets •Accessible at deployment and/or runtime •Permissions-based access. Demo: Key Vault Basics

Azure Key Vault

• Is it Serverless?

Page 13: Shh, Keep Your Secrets in Azure ApplicationsAzure Key Vault •Securely store secrets •Accessible at deployment and/or runtime •Permissions-based access. Demo: Key Vault Basics

Questions?

Matt Milner@milnertweet