<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: sajeedmoh</title>
    <description>The latest articles on DEV Community by sajeedmoh (@sajeedmoh_27).</description>
    <link>https://dev.to/sajeedmoh_27</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1278104%2F5d6fda60-4ef7-43b9-88f8-12e93bf203c6.png</url>
      <title>DEV Community: sajeedmoh</title>
      <link>https://dev.to/sajeedmoh_27</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sajeedmoh_27"/>
    <language>en</language>
    <item>
      <title>AWS-DSSE-KMS — Dual side encryption on S3</title>
      <dc:creator>sajeedmoh</dc:creator>
      <pubDate>Sun, 24 Mar 2024 14:11:57 +0000</pubDate>
      <link>https://dev.to/sajeedmoh_27/aws-dsse-kms-dual-side-encryption-on-s3-4nhg</link>
      <guid>https://dev.to/sajeedmoh_27/aws-dsse-kms-dual-side-encryption-on-s3-4nhg</guid>
      <description>&lt;h2&gt;
  
  
  AWS-DSSE-KMS — Dual side encryption on S3
&lt;/h2&gt;

&lt;p&gt;AWS S3 support dual side encryption key with KMS.Utilizing dual-layer server-side encryption with AWS KMS keys involves applying two layers of encryption to objects during their upload to Amazon S3. Its helps compliance with standards that require multilayer encryption for data.&lt;/p&gt;

&lt;p&gt;How to enable DSSE-KMS key on AWS Console.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Sign into AWS console and open S3 bucket properties tab.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select Default encryption section and choose to edit.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Under encryption type select Dual-Layer server-side encryption with AWS Key Management Service Keys (DSSE-KMS).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Under AWS KMS Key we can select Choose from your AWS KMS Keys or AWS KMS Keys in the list.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--dXmo772y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/2000/1%2A1xA9BXT2B-Aex-ivy_sqtQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--dXmo772y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/2000/1%2A1xA9BXT2B-Aex-ivy_sqtQ.png" alt="" width="520" height="402"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to enable DSSE-KMS key on AWS CLI&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Below AWS CLI command to upload new object into AWS S3 with enable dsse key.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;aws s3api put-object — bucket s3-bucket-name — key object-name — server-side-encryption aws:kms:dsse — ssekms-key-id kms_key-id — body filepath&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--obkqyVIx--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/2000/1%2ApVTtu0ufvzPtpkllnmJOmw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--obkqyVIx--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/2000/1%2ApVTtu0ufvzPtpkllnmJOmw.png" alt="" width="517" height="175"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;— ssekms-key-id -&amp;gt; specify customer managed aws kms key or it will use aws managed kms key (aws/s3).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to restrict all objects uploaded into s3 should be encrypted by DSSE-KMS&lt;/strong&gt;Add below s3 bucket policy.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ByTlLNib--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/2000/1%2AFAZNr__GIp_eswWMVQV7EQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ByTlLNib--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://cdn-images-1.medium.com/max/2000/1%2AFAZNr__GIp_eswWMVQV7EQ.png" alt="" width="491" height="338"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;-&amp;gt; S3 bucket key won’t support for DSSE-KMS.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Setup MFA Delete in S3 bucket</title>
      <dc:creator>sajeedmoh</dc:creator>
      <pubDate>Mon, 18 Mar 2024 12:15:27 +0000</pubDate>
      <link>https://dev.to/sajeedmoh_27/setup-mfa-delete-in-s3-bucket-3d9g</link>
      <guid>https://dev.to/sajeedmoh_27/setup-mfa-delete-in-s3-bucket-3d9g</guid>
      <description>&lt;h2&gt;
  
  
  &lt;strong&gt;Setup MFA Delete in S3 bucket&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Enabling MFA (Multi-Factor Authentication) delete functionality on an S3 bucket helps prevent accidental deletion of files.&lt;/p&gt;

&lt;p&gt;Step to enable MFA delete on S3 bucket.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Make sure S3 bucket version is enabled.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2A3h4B40EoF5ZIhuWzyRVRUg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2A3h4B40EoF5ZIhuWzyRVRUg.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Below CLI command to enable MFA delete&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;aws s3api put-bucket-versioning — bucket s3 bucket name — versioning-configuration Status=Enabled,MFADelete=Enabled — mfa “:aws:iam::(accountnumber):mfa/root-account-mfa-device (pass)”&lt;/p&gt;

&lt;p&gt;(pass) -&amp;gt; This is six digit passcode from your MFA device configured.&lt;/p&gt;

&lt;p&gt;Once MFA delete is enabled verify the settings inside S3 Bucket -&amp;gt; Properties -&amp;gt; Bucket Versioning.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2AJ_xFn-JKG4jBF7u5MUo7Dg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2AJ_xFn-JKG4jBF7u5MUo7Dg.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Test to delete version of an object and you will receive below error.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2Ajc-TAl5h6-7IVErlmFp5jQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2Ajc-TAl5h6-7IVErlmFp5jQ.png"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
