<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Security on Opslifeuk Limited</title><link>https://opslife.co.uk/tags/security/</link><description>Recent content in Security on Opslifeuk Limited</description><generator>Hugo</generator><language>en-gb</language><lastBuildDate>Fri, 12 Jun 2020 14:00:33 +0100</lastBuildDate><atom:link href="https://opslife.co.uk/tags/security/index.xml" rel="self" type="application/rss+xml"/><item><title>Kubernetes Service Accounts and Secrets - Mounting Secrets as Volumes</title><link>https://opslife.co.uk/kubernetes/secrets/</link><pubDate>Fri, 12 Jun 2020 14:00:33 +0100</pubDate><guid>https://opslife.co.uk/kubernetes/secrets/</guid><description>&lt;p&gt;A Service Account provides an identity for processes that run in a pod. When processes inside a pod contact the API server, they are authenticated as a particular Service Account.&lt;/p&gt;
&lt;p&gt;Create a Service Account using the YAML below.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;apiVersion&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;v1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;kind&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;ServiceAccount&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;metadata&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;name&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;sa-app-name&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;namespace&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;namespace-name&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Once the Service Account is created, you can reference it in your pod spec:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;apiVersion&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;v1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;kind&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;Pod&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;metadata&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;name&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;app-name&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;spec&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;serviceAccountName&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;sa-app-name&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Now on to Kubernetes Secrets. A Secret lets you store and manage sensitive information. Here we&amp;rsquo;ll create two secrets for our tests: &lt;code&gt;mysecret1&lt;/code&gt; and &lt;code&gt;mysecret2&lt;/code&gt;. Note the &lt;code&gt;---&lt;/code&gt; separator - without it, the second document silently overwrites the first.&lt;/p&gt;</description></item><item><title>Encrypting Secrets in Amazon EKS</title><link>https://opslife.co.uk/talks/secrets/</link><pubDate>Sun, 07 Jun 2020 00:24:41 +0100</pubDate><guid>https://opslife.co.uk/talks/secrets/</guid><description>&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/d21JrnszG7Y?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;p&gt;In this talk, Paavan Mistry explains how to encrypt Kubernetes secrets at rest
in &lt;strong&gt;etcd&lt;/strong&gt; on Amazon EKS. By default, Kubernetes stores secrets only
base64-encoded - not encrypted - so anyone who gains access to the API server
or to etcd can read them in the clear. The talk shows how to use &lt;strong&gt;AWS KMS
envelope encryption&lt;/strong&gt; to protect secrets at rest, which is an easy win for
anyone running EKS in production.&lt;/p&gt;</description></item></channel></rss>