<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>kyungs</title>
    <link>https://estherr.tistory.com/</link>
    <description>KS의 개발 블로그</description>
    <language>ko</language>
    <pubDate>Tue, 14 Jul 2026 11:43:24 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>K0ngs</managingEditor>
    <image>
      <title>kyungs</title>
      <url>https://tistory1.daumcdn.net/tistory/8207239/attach/8cedb2370c4b4461aea4805009a4d7b3</url>
      <link>https://estherr.tistory.com</link>
    </image>
    <item>
      <title>2026 하계 모각코 2주차</title>
      <link>https://estherr.tistory.com/3</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;2주차는 시험 비중이 가장 큰 도메인 1(보안 아키텍처)에 몰아 썼다. 1주차에 IAM 뼈대를 잡아둔 상태라 이번 주는 그 위에 얹히는 것들을 다뤘다. 페더레이션(엔터프라이즈 로그인), KMS 기반 암호화, S3 암호화 옵션, 보안 그룹과 NACL, WAF/Shield/GuardDuty 같은 관리형 보안 서비스, 그리고 Secrets Manager와 Parameter Store 비교까지. 개별 서비스 자체는 어렵지 않은데 서로 뭘 언제 쓰는지가 시나리오형 문제에서 계속 헷갈렸다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;참고 자료&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 주에도 노션 &quot;SAA 관련 자료&quot; 페이지에 걸어둔 링크들을 그대로 활용했다. KMS와 네트워크 보안 부분은 Tutorials Dojo cheat sheet가 특히 도움이 됐다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Charlie Kim&lt;/b&gt; - AWS Certified Solutions Architect &amp;ndash; Associate 자격증 준비 과정 및 시험 후기&lt;/li&gt;
&lt;li&gt;&lt;b&gt;루이3&lt;/b&gt; - AWS Certified &amp;ndash; Associate 덤프 문제 사이트 (문제 풀이용)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;velog G.log&lt;/b&gt; - 시리즈 [TIL] AWS Certified 준비 (SAA-C03, DVA-C02)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;velog kyj311.log&lt;/b&gt; - 시리즈 Architecting on AWS 정리 (SAA 대비)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Tutorials Dojo&lt;/b&gt; - &quot;KMS cheat sheet&quot;, &quot;Security Group NACL cheat sheet&quot; 검색&lt;/li&gt;
&lt;li&gt;AWS 공식 문서 - KMS 개발자 가이드 (Envelope Encryption 부분)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1. 페더레이션과 IAM Identity Center&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1주차에 STS/AssumeRole 개념까지 봤으니 이번 주는 그 확장판. 시험에서 &quot;기업 내 AD 사용자가 AWS 콘솔에 접근&quot; 같은 시나리오가 나오면 이 파트다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;SAML 2.0 페더레이션&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;사내 IdP(ADFS, Okta 등)와 AWS를 SAML로 연결&lt;/li&gt;
&lt;li&gt;사용자가 IdP에 로그인 &amp;rarr; IdP가 SAML Assertion 발급 &amp;rarr; AWS STS의 AssumeRoleWithSAML로 임시 자격 증명 획득&lt;/li&gt;
&lt;li&gt;AWS 계정 안에 별도 IAM User를 만들 필요가 없어서 관리 부담이 줄어든다&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Web Identity Federation&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Google, Facebook, Amazon 같은 OIDC 공급자로 로그인한 사용자에게 AWS 리소스 접근 부여&lt;/li&gt;
&lt;li&gt;AssumeRoleWithWebIdentity 사용&lt;/li&gt;
&lt;li&gt;실제로는 이걸 직접 다루기보다 &lt;b&gt;Cognito&lt;/b&gt;로 감싸는 게 훨씬 흔함&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Amazon Cognito&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;헷갈리기 쉬운 두 컴포넌트가 있다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;User Pool&lt;/b&gt;: 사용자 로그인 자체를 관리 (회원가입, 로그인, MFA, 소셜 로그인). 결과물은 &lt;b&gt;JWT 토큰&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Identity Pool&lt;/b&gt;: 로그인한 사용자에게 &lt;b&gt;AWS 임시 자격 증명&lt;/b&gt; 발급. 결과물은 STS 자격 증명&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앱 사용자가 S3에 직접 업로드하는 시나리오라면:&lt;br /&gt;User Pool로 로그인 &amp;rarr; Identity Pool로 임시 자격 증명 받음 &amp;rarr; S3에 직접 요청&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;IAM Identity Center (구 AWS SSO)&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;여러 AWS 계정 + 사내 사용자&lt;/b&gt;를 한 곳에서 관리&lt;/li&gt;
&lt;li&gt;Organizations와 연동해 계정별 권한 세트를 통합 관리&lt;/li&gt;
&lt;li&gt;시나리오에 &quot;여러 계정에 대한 단일 로그인&quot; 나오면 이 서비스&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;시험 힌트 정리&lt;/b&gt;:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;사내 AD &amp;rarr; &lt;b&gt;SAML 페더레이션&lt;/b&gt; or &lt;b&gt;IAM Identity Center&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;모바일 앱 사용자 &amp;rarr; &lt;b&gt;Cognito Identity Pool&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;소셜 로그인 &amp;rarr; &lt;b&gt;Cognito User Pool&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;여러 AWS 계정 통합 로그인 &amp;rarr; &lt;b&gt;IAM Identity Center&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2. KMS와 데이터 암호화&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 주에 가장 시간을 많이 쓴 파트. 시험에 &quot;저장 데이터 암호화(Encryption at Rest)&quot; 관련 문제가 계속 나온다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2.1 대칭키 vs 비대칭키&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;대칭 CMK&lt;/b&gt;: 하나의 키로 암/복호화. 대부분의 AWS 서비스 통합 (S3, EBS, RDS 등). 성능 좋음&lt;/li&gt;
&lt;li&gt;&lt;b&gt;비대칭 CMK&lt;/b&gt;: 공개키/개인키 쌍. 서명 검증이나 외부에 공개키만 배포해야 하는 경우&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시험에선 대부분 &lt;b&gt;대칭키&lt;/b&gt;를 쓴다고 보면 된다. 비대칭은 &quot;외부에 키를 노출하지 않고 서명&quot;류 문제.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2.2 KMS 키 종류&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;종류 관리 주체 특징&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;AWS Owned Key&lt;/td&gt;
&lt;td&gt;AWS&lt;/td&gt;
&lt;td&gt;여러 계정이 공유. 보이지 않고 로그도 없음&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AWS Managed Key&lt;/td&gt;
&lt;td&gt;AWS&lt;/td&gt;
&lt;td&gt;aws/서비스명 형식. 확인은 가능, 무료&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Customer Managed Key (CMK)&lt;/td&gt;
&lt;td&gt;고객&lt;/td&gt;
&lt;td&gt;정책/순환/삭제 직접 제어. &lt;b&gt;월 $1 + API 호출 요금&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;CMK만 KMS Key Policy를 세밀하게 편집 가능&lt;/b&gt;. 시험에서 &quot;키 정책 편집&quot;, &quot;감사 로그 필요&quot;, &quot;삭제 지연 필요&quot;가 요건이면 무조건 CMK.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2.3 자동 키 순환&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;AWS Managed Key&lt;/b&gt;: 매년 자동 순환 (변경 불가)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;CMK&lt;/b&gt;: 옵션으로 매년 자동 순환. 기본은 꺼져 있음&lt;/li&gt;
&lt;li&gt;순환 후에도 예전 키 소재는 남아 있어서 이전에 암호화된 데이터도 복호화 가능&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2.4 Envelope Encryption (반드시 이해)&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;720&quot; data-origin-height=&quot;320&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/L4LMm/dJMcabSokZD/RK2BvsrbwY2zxNloL0FahK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/L4LMm/dJMcabSokZD/RK2BvsrbwY2zxNloL0FahK/img.png&quot; data-alt=&quot;https://medium.com/@dipandergoyal/aws-kms-envelop-encryption-explained-9db3bd56542b&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/L4LMm/dJMcabSokZD/RK2BvsrbwY2zxNloL0FahK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FL4LMm%2FdJMcabSokZD%2FRK2BvsrbwY2zxNloL0FahK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;222&quot; data-origin-width=&quot;720&quot; data-origin-height=&quot;320&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;https://medium.com/@dipandergoyal/aws-kms-envelop-encryption-explained-9db3bd56542b&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;KMS 자체는 &lt;b&gt;4KB 이상 데이터를 직접 암호화하지 못한다.&lt;/b&gt; 그래서 실제 데이터는 &lt;b&gt;Data Key&lt;/b&gt;로 암호화하고, Data Key를 KMS &lt;b&gt;CMK&lt;/b&gt;로 암호화하는 방식.&lt;/p&gt;
&lt;pre class=&quot;sas&quot;&gt;&lt;code&gt;평문 데이터 ──[Data Key로 암호화]──&amp;gt; 암호문
Data Key ──[CMK로 암호화]──&amp;gt; 암호화된 Data Key (암호문 옆에 함께 저장)
&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주요 API:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;GenerateDataKey: 평문 Data Key + 암호화된 Data Key 함께 반환&lt;/li&gt;
&lt;li&gt;GenerateDataKeyWithoutPlaintext: 나중에 복호화용으로 저장할 때&lt;/li&gt;
&lt;li&gt;Decrypt: 암호화된 Data Key를 KMS에 보내 평문 Data Key 획득&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시험 문제 힌트: &quot;&lt;b&gt;4KB보다 큰 데이터를 KMS로 암호화&lt;/b&gt;&quot; &amp;rarr; Envelope Encryption / GenerateDataKey.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2.5 CloudHSM&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;하드웨어 보안 모듈(HSM)&lt;/b&gt; 을 고객 전용으로 제공&lt;/li&gt;
&lt;li&gt;&lt;b&gt;FIPS 140-2 Level 3&lt;/b&gt; 준수. 규제 요건이 KMS로 부족할 때&lt;/li&gt;
&lt;li&gt;키 관리를 &lt;b&gt;AWS도 못 보게&lt;/b&gt; 완전히 고객이 통제해야 하는 경우&lt;/li&gt;
&lt;li&gt;KMS와 달리 서비스 통합이 자동으로 안 됨. 애플리케이션 레벨에서 붙여야 함&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;3. S3 암호화 옵션&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;474&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b6PpSk/dJMcaijIXbV/kBj7dqf5ikk7EMdkgdnAmK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b6PpSk/dJMcaijIXbV/kBj7dqf5ikk7EMdkgdnAmK/img.jpg&quot; data-alt=&quot;https://digitalcloud.training/amazon-s3-and-glacier/&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b6PpSk/dJMcaijIXbV/kBj7dqf5ikk7EMdkgdnAmK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb6PpSk%2FdJMcaijIXbV%2FkBj7dqf5ikk7EMdkgdnAmK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;231&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;474&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;https://digitalcloud.training/amazon-s3-and-glacier/&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시험에 자주 나오는 옵션들. 이름이 비슷해서 반드시 정리해둬야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;옵션 키 소유 키 관리 사용 예&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;SSE-S3&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;AWS&lt;/td&gt;
&lt;td&gt;AWS 완전 관리, AES-256&lt;/td&gt;
&lt;td&gt;기본, 별 요건 없을 때&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;SSE-KMS&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;AWS/고객&lt;/td&gt;
&lt;td&gt;KMS CMK로 관리, 감사 로그&lt;/td&gt;
&lt;td&gt;감사/규제 요건, 키 정책 필요&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;DSSE-KMS&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;AWS/고객&lt;/td&gt;
&lt;td&gt;이중 계층 암호화&lt;/td&gt;
&lt;td&gt;국방/정부급 규제 요건&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;SSE-C&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;고객&lt;/td&gt;
&lt;td&gt;고객이 키 직접 제공, AWS는 보관 안 함&lt;/td&gt;
&lt;td&gt;키를 AWS 밖에서 관리해야 할 때&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Client-Side Encryption&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;고객&lt;/td&gt;
&lt;td&gt;업로드 전 클라이언트에서 암호화&lt;/td&gt;
&lt;td&gt;AWS를 완전히 신뢰 못 할 때&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2023년부터 S3 신규 객체는 SSE-S3가 기본 활성화&lt;/b&gt;된다. 이거 놓치면 안 됨.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시험 힌트:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&quot;감사 로그로 누가 언제 키 썼는지 추적&quot; &amp;rarr; &lt;b&gt;SSE-KMS&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&quot;AWS에 키를 절대 저장하지 않음&quot; &amp;rarr; &lt;b&gt;SSE-C&lt;/b&gt; or &lt;b&gt;Client-Side&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&quot;규제상 이중 암호화&quot; &amp;rarr; &lt;b&gt;DSSE-KMS&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;S3 Bucket Key&lt;/b&gt;: SSE-KMS에서 KMS API 호출을 대폭 줄여주는 옵션. 대용량 요청에서 비용 최대 99% 절감. 시나리오에 &quot;SSE-KMS 비용이 너무 높음&quot; 나오면 답은 이거.&lt;/p&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;4. Security Group vs NACL&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;798&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/39v1t/dJMcaaMLyY6/ONigoMoAdG8YIUjRGNGLu0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/39v1t/dJMcaaMLyY6/ONigoMoAdG8YIUjRGNGLu0/img.png&quot; data-alt=&quot;https://cloudviz.io/blog/aws-security-group-vs-nacl&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/39v1t/dJMcaaMLyY6/ONigoMoAdG8YIUjRGNGLu0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F39v1t%2FdJMcaaMLyY6%2FONigoMoAdG8YIUjRGNGLu0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;312&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;798&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;https://cloudviz.io/blog/aws-security-group-vs-nacl&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 두 개 비교는 시험 단골. 표로 정리.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;항목 Security Group NACL&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;적용 대상&lt;/td&gt;
&lt;td&gt;ENI (인스턴스 레벨)&lt;/td&gt;
&lt;td&gt;서브넷 레벨&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;상태(State)&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;Stateful&lt;/b&gt; (반환 트래픽 자동 허용)&lt;/td&gt;
&lt;td&gt;&lt;b&gt;Stateless&lt;/b&gt; (양방향 규칙 필요)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;규칙 종류&lt;/td&gt;
&lt;td&gt;Allow만 가능&lt;/td&gt;
&lt;td&gt;Allow &lt;b&gt;및 Deny&lt;/b&gt; 가능&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;규칙 평가&lt;/td&gt;
&lt;td&gt;전부 평가 후 하나라도 매치되면 허용&lt;/td&gt;
&lt;td&gt;번호 순서대로 평가, 매치되면 즉시 결정&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;기본 정책&lt;/td&gt;
&lt;td&gt;모든 인바운드 차단, 모든 아웃바운드 허용&lt;/td&gt;
&lt;td&gt;기본 NACL은 모두 허용, 커스텀 NACL은 모두 차단&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;실제로 헷갈리는 포인트&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Stateful의 의미&lt;/b&gt;: SG에서 인바운드 80 포트만 열어도, 그에 대한 응답은 아웃바운드 규칙과 무관하게 자동으로 나간다. NACL은 반대로 아웃바운드 응답 포트(에페메랄 포트 1024&amp;ndash;65535)를 별도로 열어줘야 한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Deny가 필요할 때&lt;/b&gt;: SG에는 Deny 규칙이 없다. 특정 IP만 차단해야 하면 NACL을 써야 한다. 시나리오에 &quot;특정 악성 IP 차단&quot; 나오면 SG가 아니라 NACL이 답.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;규칙 번호&lt;/b&gt;: NACL 규칙은 낮은 번호부터 평가되므로, 100번에 Allow가 걸리고 200번에 Deny를 놓으면 200번 규칙은 무시된다. 반대로 100번에 Deny, 200번에 Allow면 Deny가 이김.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;NAT Gateway&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Private Subnet의 인스턴스가 인터넷을 나가야 할 때&lt;/b&gt; 사용&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Public Subnet에 배치&lt;/b&gt;. Private에 배치하면 아무 의미 없다는 게 시험 함정&lt;/li&gt;
&lt;li&gt;NAT Gateway는 관리형/고가용성, NAT Instance는 저렴하지만 직접 관리&lt;/li&gt;
&lt;li&gt;최신 시험은 대부분 NAT Gateway가 답&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;5. 관리형 보안 서비스&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;409&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cV6Hyp/dJMcahZnxUL/UqJX078j9OUgEP3veEUye0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cV6Hyp/dJMcahZnxUL/UqJX078j9OUgEP3veEUye0/img.png&quot; data-alt=&quot;https://aws.amazon.com/ko/blogs/korea/aws-heroes-putting-aws-security-services-to-work-for-you/&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cV6Hyp/dJMcahZnxUL/UqJX078j9OUgEP3veEUye0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcV6Hyp%2FdJMcahZnxUL%2FUqJX078j9OUgEP3veEUye0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;273&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;409&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;https://aws.amazon.com/ko/blogs/korea/aws-heroes-putting-aws-security-services-to-work-for-you/&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이름이 다 비슷해서 헷갈리는 것들. 한 문장씩 정리했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서비스 역할 사용 시점&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;AWS WAF&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;HTTP/HTTPS 계층(L7) 웹 방화벽&lt;/td&gt;
&lt;td&gt;SQL Injection, XSS 차단&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;AWS Shield Standard&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;무료 L3/L4 DDoS 보호&lt;/td&gt;
&lt;td&gt;자동 적용&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;AWS Shield Advanced&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;유료 고급 DDoS 보호 + WAF 포함&lt;/td&gt;
&lt;td&gt;대규모 서비스&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;GuardDuty&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;위협 탐지 (지속적 모니터링)&lt;/td&gt;
&lt;td&gt;이상 API 호출, 크립토 마이닝 등&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Macie&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;S3 내 민감 데이터(PII) 자동 발견&lt;/td&gt;
&lt;td&gt;개인정보 스캔 요건&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Inspector&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;EC2/ECR/Lambda 취약점 스캔&lt;/td&gt;
&lt;td&gt;CVE 자동 검사&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Security Hub&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;여러 보안 서비스 결과 통합 대시보드&lt;/td&gt;
&lt;td&gt;중앙 관제&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Detective&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;보안 이벤트 원인 조사 (그래프 분석)&lt;/td&gt;
&lt;td&gt;사고 후 포렌식&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;시나리오 힌트&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&quot;SQL Injection 방어&quot; &amp;rarr; &lt;b&gt;WAF&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&quot;DDoS로 사이트 다운&quot; &amp;rarr; &lt;b&gt;Shield Advanced&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&quot;S3에 개인정보가 있는지 스캔&quot; &amp;rarr; &lt;b&gt;Macie&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&quot;EC2 AMI에 알려진 취약점 검사&quot; &amp;rarr; &lt;b&gt;Inspector&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&quot;이상한 API 호출/암호화폐 마이닝 탐지&quot; &amp;rarr; &lt;b&gt;GuardDuty&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&quot;여러 보안 서비스 결과를 한 화면에서&quot; &amp;rarr; &lt;b&gt;Security Hub&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;CloudTrail, Config는 보안 서비스는 아니지만 함께 자주 언급된다:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;CloudTrail&lt;/b&gt;: API 호출 감사 로그&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Config&lt;/b&gt;: 리소스 구성 변경 이력, 규정 준수 평가&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;6. Secrets Manager vs Parameter Store&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기밀 정보 저장은 이 두 개 중 하나로 좁혀진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;항목 Secrets Manager SSM Parameter Store&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;자동 순환&lt;/td&gt;
&lt;td&gt;&lt;b&gt;가능&lt;/b&gt; (RDS/Redshift 등 통합)&lt;/td&gt;
&lt;td&gt;불가 (직접 구현 필요)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;비용&lt;/td&gt;
&lt;td&gt;시크릿당 월 $0.40 + API 호출&lt;/td&gt;
&lt;td&gt;표준 무료, Advanced $0.05/시크릿&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;최대 크기&lt;/td&gt;
&lt;td&gt;64KB&lt;/td&gt;
&lt;td&gt;표준 4KB, Advanced 8KB&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;KMS 통합&lt;/td&gt;
&lt;td&gt;기본 지원&lt;/td&gt;
&lt;td&gt;SecureString 타입에서 지원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;크로스 계정 공유&lt;/td&gt;
&lt;td&gt;리소스 정책으로 가능&lt;/td&gt;
&lt;td&gt;불가 (직접 로직 필요)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;시험 힌트&lt;/b&gt;:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&quot;DB 자격 증명 자동 순환&quot; &amp;rarr; &lt;b&gt;Secrets Manager&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&quot;비용 최소화&quot; or &quot;환경 변수 대체&quot; &amp;rarr; &lt;b&gt;Parameter Store&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&quot;설정 값 저장 (기밀 아님)&quot; &amp;rarr; &lt;b&gt;Parameter Store&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;7. 실전 문제 풀이&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 주도 ExamTopics SAA-C03에서 보안 관련 문제를 골라 풀었다. 유형별로 3개.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;문제 1 (S3 암호화 자주 나오는 유형)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 회사가 S3에 대용량 로그 파일을 SSE-KMS로 암호화하여 저장한다. 최근 KMS API 요청량이 급증하면서 요금이 부담스러워졌다. 데이터 보안은 유지하면서 &lt;b&gt;비용을 줄이는 방법&lt;/b&gt;은?&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;A. 암호화 방식을 SSE-S3로 변경한다&lt;br /&gt;B. S3 Bucket Key를 활성화한다&lt;br /&gt;C. CloudFront를 통해 S3에 접근하도록 변경한다&lt;br /&gt;D. 데이터를 압축하여 저장한다&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;정답: B&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;S3 Bucket Key는 버킷 레벨에서 임시 데이터 키를 캐시해 KMS API 호출을 크게 줄인다. 공식 문서에서는 최대 99%까지 요금 절감을 언급한다. 보안 수준은 SSE-KMS와 동일. A는 감사 로그가 사라지고, C는 무관하며, D는 KMS 호출 수와 무관하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;문제 2 (SG vs NACL 자주 나오는 유형)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 회사가 EC2 인스턴스에 대해 &lt;b&gt;특정 IP 대역에서 오는 트래픽을 명시적으로 차단&lt;/b&gt;해야 한다. 이 인스턴스는 여러 서브넷에 분산되어 있다. 어떻게 구성해야 하는가?&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;A. 보안 그룹에 해당 IP를 Deny 규칙으로 추가한다&lt;br /&gt;B. 서브넷의 NACL에 해당 IP를 Deny 규칙으로 추가한다&lt;br /&gt;C. VPC의 라우팅 테이블에서 해당 IP를 블랙홀로 라우팅한다&lt;br /&gt;D. IAM 정책에 조건 키를 사용해 IP를 차단한다&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;정답: B&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Security Group은 &lt;b&gt;Deny 규칙이 없다.&lt;/b&gt; 특정 IP 차단은 무조건 NACL. NACL은 서브넷 레벨이라 여러 서브넷에 각각 적용해야 하지만 요구사항 자체가 서브넷 분산이므로 문제 없음. C는 인바운드 차단에 부적합, D는 AWS API 호출 제한이지 네트워크 계층 차단이 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;문제 3 (관리형 보안 서비스 비교 유형)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 회사가 AWS 계정에서 발생하는 &lt;b&gt;비정상적인 API 호출&lt;/b&gt;과 &lt;b&gt;크립토 마이닝 시도&lt;/b&gt;를 탐지하고 싶다. 별도 에이전트 설치 없이 지속적으로 모니터링해야 하며, 여러 계정에 걸쳐 결과를 통합 관리할 수 있어야 한다. 가장 적합한 조합은?&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;A. GuardDuty를 활성화하고, 여러 계정 결과를 Security Hub에 집계&lt;br /&gt;B. Inspector를 EC2에 설치하고 CloudWatch로 알람 설정&lt;br /&gt;C. Macie로 S3를 스캔하고 SNS로 알림&lt;br /&gt;D. CloudTrail 로그를 Athena로 직접 쿼리&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;정답: A&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GuardDuty는 CloudTrail/VPC Flow Logs/DNS 로그를 기반으로 &lt;b&gt;에이전트 없이&lt;/b&gt; 이상 API 호출과 마이닝을 탐지한다. Security Hub는 여러 계정의 GuardDuty 결과를 통합 대시보드로 제공. Inspector(B)는 취약점 스캐너지 이상 행위 탐지가 아님. Macie(C)는 S3 민감 데이터 스캔용. D는 지속적 모니터링에 부적합하다.&lt;/p&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;8. 이번 주 회고&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지난 주 IAM을 정리해뒀던 게 이번 주에 계속 도움이 됐다. 결국 이번 주에 나온 서비스 대부분이 IAM 정책이나 리소스 정책 위에 얹혀 있는 형태였고, S3 암호화 옵션도 SSE-KMS면 어차피 KMS Key Policy가 붙는다. 보안 도메인이 IAM을 축으로 확장된다는 감각이 이제야 잡힌 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 힘들었던 건 KMS의 Envelope Encryption과 CMK/AWS Managed Key/AWS Owned Key 구분이었다. 처음엔 다 KMS니까 비슷비슷하게 봤는데, 누가 키 정책을 편집할 수 있느냐는 관점으로 다시 보니 CMK만 답이 되는 이유가 명확해졌다. 시나리오형 문제에서 감사 로그 필요, 키 정책 커스터마이징 필요, 삭제 지연 필요 같은 단어가 나오면 자동으로 CMK로 정답이 좁혀진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또 다른 큰 수확은 Security Group과 NACL을 완전히 분리해서 이해한 것. 예전에는 대충 &quot;둘 다 방화벽&quot;이라고 뭉뚱그렸는데, Stateful/Stateless 개념을 노트에 그림으로 그려두고 나니 문제에서 어느 쪽을 물어보는지 즉시 판별 가능해졌다. 특히 &lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;Deny 규칙 필요가 나오면 무조건 NACL&lt;/b&gt;&lt;/span&gt;이라는 사실은 앞으로 계속 써먹을 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;관리형 보안 서비스들은 이름과 역할을 한 문장으로 매핑해서 노션 &quot;SAA Tip&quot;에 옮겨뒀다.&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-style=&quot;style5&quot; data-ke-type=&quot;horizontalRule&quot; /&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-sourcepos=&quot;65:1-65:102;1205-1306&quot; data-ke-size=&quot;size23&quot;&gt;팀원&lt;span&gt;&amp;nbsp;&lt;/span&gt;블로그&lt;/h3&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-sourcepos=&quot;65:1-65:102;1205-1306&quot; data-ke-size=&quot;size20&quot;&gt;정재현 블로그&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://blog.naver.com/jjaehyun__/224344487255&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://blog.naver.com/jjaehyun__/224344487255&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1783930586686&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[2026 하계 모각코] 2주차 모임&quot; data-og-description=&quot;2주차 목표: LC Part 3~4 + RC Part 5 문법 기초 1주차에서 시험 전체 구조를 훑어봤다면, 2주차는 ...&quot; data-og-host=&quot;blog.naver.com&quot; data-og-source-url=&quot;https://blog.naver.com/jjaehyun__/224344487255&quot; data-og-url=&quot;https://blog.naver.com/jjaehyun__/224344487255&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/b9j9AK/dJMb8PGIp02/avcvy79hFjYRNyK7QziQ2k/img.png?width=270&amp;amp;height=270&amp;amp;face=0_0_270_270&quot;&gt;&lt;a href=&quot;https://blog.naver.com/jjaehyun__/224344487255&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://blog.naver.com/jjaehyun__/224344487255&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/b9j9AK/dJMb8PGIp02/avcvy79hFjYRNyK7QziQ2k/img.png?width=270&amp;amp;height=270&amp;amp;face=0_0_270_270');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[2026 하계 모각코] 2주차 모임&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;2주차 목표: LC Part 3~4 + RC Part 5 문법 기초 1주차에서 시험 전체 구조를 훑어봤다면, 2주차는 ...&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;blog.naver.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-sourcepos=&quot;65:1-65:102;1205-1306&quot; data-ke-size=&quot;size20&quot;&gt;박소윤 블로그&lt;/h4&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://coding567.tistory.com/128&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://coding567.tistory.com/128&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1783864848744&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[2026 하계모각코] 2차시 결과&quot; data-og-description=&quot; &quot; data-og-host=&quot;coding567.tistory.com&quot; data-og-source-url=&quot;https://coding567.tistory.com/128&quot; data-og-url=&quot;https://coding567.tistory.com/128&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/fXMwa/dJMb9kmoxfu/YpkcDswFJfLQqocsAxxRn0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/sW0QK/dJMb8Yp7vUU/wpDoihGFUettg9LDRQB7kK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://coding567.tistory.com/128&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://coding567.tistory.com/128&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/fXMwa/dJMb9kmoxfu/YpkcDswFJfLQqocsAxxRn0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/sW0QK/dJMb8Yp7vUU/wpDoihGFUettg9LDRQB7kK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[2026 하계모각코] 2차시 결과&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;coding567.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;2주차 모임 사진&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2026-07-06 오후 7.39.46.png&quot; data-origin-width=&quot;2470&quot; data-origin-height=&quot;1486&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/3UdHM/dJMcafAxMty/zjcqweCFVcEzSnTGWvgz50/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/3UdHM/dJMcafAxMty/zjcqweCFVcEzSnTGWvgz50/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/3UdHM/dJMcafAxMty/zjcqweCFVcEzSnTGWvgz50/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3UdHM%2FdJMcafAxMty%2FzjcqweCFVcEzSnTGWvgz50%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;241&quot; data-filename=&quot;스크린샷 2026-07-06 오후 7.39.46.png&quot; data-origin-width=&quot;2470&quot; data-origin-height=&quot;1486&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <author>K0ngs</author>
      <guid isPermaLink="true">https://estherr.tistory.com/3</guid>
      <comments>https://estherr.tistory.com/3#entry3comment</comments>
      <pubDate>Sun, 12 Jul 2026 23:07:42 +0900</pubDate>
    </item>
    <item>
      <title>2026 하계 모각코 1주차</title>
      <link>https://estherr.tistory.com/2</link>
      <description>&lt;div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span data-newtext-seq=&quot;0&quot;&gt;첫 주는 &lt;/span&gt;&lt;span data-newtext-seq=&quot;5&quot;&gt;AWS 전반 &lt;/span&gt;&lt;span data-newtext-seq=&quot;12&quot;&gt;구조와 IAM에 &lt;/span&gt;&lt;span data-newtext-seq=&quot;21&quot;&gt;시간을 몰아 &lt;/span&gt;&lt;span data-newtext-seq=&quot;28&quot;&gt;썼다. 학교에서 &lt;/span&gt;&lt;span data-newtext-seq=&quot;37&quot;&gt;클라우드 부전공을 &lt;/span&gt;&lt;span data-newtext-seq=&quot;47&quot;&gt;하면서 EC2, &lt;/span&gt;&lt;span data-newtext-seq=&quot;56&quot;&gt;S3, VPC 정도는 &lt;/span&gt;&lt;span data-newtext-seq=&quot;68&quot;&gt;다뤄봤지만 &lt;/span&gt;&lt;span data-newtext-seq=&quot;74&quot;&gt;SAA 관점에서 &lt;/span&gt;&lt;span data-newtext-seq=&quot;83&quot;&gt;다시 보니 &lt;/span&gt;&lt;span data-newtext-seq=&quot;89&quot;&gt;놓쳤던 게 &lt;/span&gt;&lt;span data-newtext-seq=&quot;95&quot;&gt;많았다. 특히 IAM은 &lt;/span&gt;&lt;span data-newtext-seq=&quot;108&quot;&gt;시험 30% &lt;/span&gt;&lt;span data-newtext-seq=&quot;115&quot;&gt;비중인 보안 &lt;/span&gt;&lt;span data-newtext-seq=&quot;122&quot;&gt;도메인의 &lt;/span&gt;&lt;span data-newtext-seq=&quot;127&quot;&gt;핵심이고, 사실상 모든 시나리오 &lt;/span&gt;&lt;span data-newtext-seq=&quot;145&quot;&gt;문제에 얽혀 &lt;/span&gt;&lt;span data-newtext-seq=&quot;152&quot;&gt;나온다고 해서 &lt;/span&gt;&lt;span data-newtext-seq=&quot;160&quot;&gt;이번 주는 &lt;/span&gt;&lt;span data-newtext-seq=&quot;166&quot;&gt;IAM에 절반 &lt;/span&gt;&lt;span data-newtext-seq=&quot;174&quot;&gt;이상을 썼다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span data-newtext-seq=&quot;0&quot;&gt;노션&lt;/span&gt;&lt;span data-newtext-seq=&quot;2&quot;&gt;에 학습 &lt;/span&gt;&lt;span data-newtext-seq=&quot;7&quot;&gt;페이지를 아래처럼 &lt;/span&gt;&lt;span data-newtext-seq=&quot;17&quot;&gt;정리해두고, 매주 &lt;/span&gt;&lt;span data-newtext-seq=&quot;27&quot;&gt;이 구조로 채워 갈 &lt;/span&gt;&lt;span data-newtext-seq=&quot;38&quot;&gt;계획이다.&lt;/span&gt;&lt;/p&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1250&quot; data-origin-height=&quot;1308&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bqVWlN/dJMcafUOps1/EFhkkKNssCaqT1IJZollGK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bqVWlN/dJMcafUOps1/EFhkkKNssCaqT1IJZollGK/img.png&quot; data-alt=&quot;노션 강의 노트&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bqVWlN/dJMcafUOps1/EFhkkKNssCaqT1IJZollGK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbqVWlN%2FdJMcafUOps1%2FEFhkkKNssCaqT1IJZollGK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;419&quot; data-origin-width=&quot;1250&quot; data-origin-height=&quot;1308&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;노션 강의 노트&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span data-newtext-seq=&quot;2&quot;&gt;SSA - &lt;/span&gt;&lt;span data-newtext-seq=&quot;8&quot;&gt;자격증 취득 &lt;/span&gt;&lt;span data-newtext-seq=&quot;15&quot;&gt;로드맵&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span data-newtext-seq=&quot;35&quot;&gt;SAA 정리 (주차별 &lt;/span&gt;&lt;span data-newtext-seq=&quot;47&quot;&gt;개념 &lt;/span&gt;&lt;span data-newtext-seq=&quot;50&quot;&gt;요약)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span data-newtext-seq=&quot;50&quot;&gt;SAA Tip &lt;/span&gt;&lt;span data-newtext-seq=&quot;64&quot;&gt;(문제 풀 때 &lt;/span&gt;&lt;span data-newtext-seq=&quot;72&quot;&gt;자주 나오는 함정 &lt;/span&gt;&lt;span data-newtext-seq=&quot;82&quot;&gt;정리)&lt;/span&gt;&lt;span data-newtext-seq=&quot;82&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;참고 자료&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 주에 참고한 자료들. 노션 &quot;SAA 관련 자료&quot; 페이지에 링크로 걸어뒀다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1444&quot; data-origin-height=&quot;804&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/o56PC/dJMcaiYbli2/vTooW6fDpTQk9rOIHWCkI1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/o56PC/dJMcaiYbli2/vTooW6fDpTQk9rOIHWCkI1/img.png&quot; data-alt=&quot;SAA 관련 자료&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/o56PC/dJMcaiYbli2/vTooW6fDpTQk9rOIHWCkI1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fo56PC%2FdJMcaiYbli2%2FvTooW6fDpTQk9rOIHWCkI1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;223&quot; data-origin-width=&quot;1444&quot; data-origin-height=&quot;804&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;SAA 관련 자료&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. AWS 글로벌 인프라 (심화)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본 개념(Region/AZ/Edge)은 대부분 알고 있어서, 시험에서 헷갈리는 지점 위주로 정리했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;833&quot; data-origin-height=&quot;727&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bb52j9/dJMcahSwy9m/AXAxKloHu9VL9OQTs9aWo0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bb52j9/dJMcahSwy9m/AXAxKloHu9VL9OQTs9aWo0/img.png&quot; data-alt=&quot;https://builder.aws.com/content/36pS4SZIOBsB0L0ns0WZb68XBNc/why-aws-stop-fighting-latency-a-deep-dive-into-aws-infrastructure-components&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bb52j9/dJMcahSwy9m/AXAxKloHu9VL9OQTs9aWo0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbb52j9%2FdJMcahSwy9m%2FAXAxKloHu9VL9OQTs9aWo0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;349&quot; data-origin-width=&quot;833&quot; data-origin-height=&quot;727&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;https://builder.aws.com/content/36pS4SZIOBsB0L0ns0WZb68XBNc/why-aws-stop-fighting-latency-a-deep-dive-into-aws-infrastructure-components&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;AZ의 실체&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AZ는 &quot;물리적으로 분리된 데이터센터&quot; 하나가 아니라, &lt;b&gt;여러 데이터센터 묶음&lt;/b&gt;이다. 각 AZ는 저지연 링크로 연결되어 있지만 물리적, 전원, 네트워킹은 독립적으로 구성된다. 그래서 다중 AZ 배포는 &quot;다른 건물에 복제&quot; 수준이 아니라 실제 재해 격리가 된다.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;Region 간 이동은 자동이 아니다&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;S3, DynamoDB Global Tables, RDS 크로스 리전 복제 등은 &lt;b&gt;명시적으로 설정해야&lt;/b&gt; 리전 간 복제가 일어난다. 기본값은 리전 종속이다. 시험 문제에서 &quot;리전 하나가 완전히 다운되어도 서비스 지속&quot; 요건이 나오면 반드시 크로스 리전 아키텍처를 골라야 한다.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;확장 인프라 개념 (자주 물어봄)&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Local Zone&lt;/b&gt;: 특정 대도시에 배치된 소형 인프라. 초저지연이 필요한 워크로드용&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Wavelength Zone&lt;/b&gt;: 5G 통신사 망 안에 배치. 모바일 엣지 컴퓨팅&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Outposts&lt;/b&gt;: AWS 하드웨어를 온프레미스에 설치. 하이브리드/데이터 주권 요건&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Edge Location&lt;/b&gt;: CloudFront/Global Accelerator/Route 53이 사용. 400+개, AZ보다 훨씬 많음&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시나리오에 &quot;초저지연&quot;, &quot;특정 도시&quot;, &quot;모바일&quot;, &quot;온프레미스 데이터 유지&quot;가 나오면 이 4개 중 하나가 정답인 경우가 많다.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;서울 리전 팩트체크&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;리전 코드: ap-northeast-2&lt;/li&gt;
&lt;li&gt;AZ: 4개 (ap-northeast-2a/b/c/d)&lt;/li&gt;
&lt;li&gt;AZ 이름은 &lt;b&gt;계정마다 물리 AZ에 매핑되는 방식이 다르다.&lt;/b&gt; 내 계정의 2a와 다른 계정의 2a가 같은 물리 AZ가 아닐 수 있음. 이걸 통일하려면 AZ ID(apne2-az1 등)를 봐야 한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 공동 책임 모델 (Shared Responsibility Model)&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;537&quot; data-origin-height=&quot;319&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/A6vlr/dJMcaalzydH/sLAKUgkXSqKep4Y8C5JON1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/A6vlr/dJMcaalzydH/sLAKUgkXSqKep4Y8C5JON1/img.jpg&quot; data-alt=&quot;https://aakibkhan1.medium.com/aws-shared-responsibility-model-part-1-65be5ad93453&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/A6vlr/dJMcaalzydH/sLAKUgkXSqKep4Y8C5JON1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FA6vlr%2FdJMcaalzydH%2FsLAKUgkXSqKep4Y8C5JON1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;537&quot; height=&quot;319&quot; data-origin-width=&quot;537&quot; data-origin-height=&quot;319&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;https://aakibkhan1.medium.com/aws-shared-responsibility-model-part-1-65be5ad93453&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시험에서 &quot;이 상황은 AWS 책임인가, 고객 책임인가&quot;로 물어보는 문제가 종종 있다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;AWS 책임 (&quot;of the Cloud&quot;)&lt;/b&gt;: 물리 인프라, 호스트 OS, 하이퍼바이저, 네트워크 백본, 관리형 서비스의 내부 운영&lt;/li&gt;
&lt;li&gt;&lt;b&gt;고객 책임 (&quot;in the Cloud&quot;)&lt;/b&gt;: 게스트 OS 패치, 애플리케이션, IAM 사용자/권한, 방화벽(보안 그룹/NACL) 설정, 데이터 암호화 설정&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;헷갈리는 케이스&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;EC2&lt;/b&gt;: OS 패치는 &lt;b&gt;고객&lt;/b&gt; 책임 (SSM Patch Manager로 자동화 가능하지만 어쨌든 책임 주체는 고객)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;RDS&lt;/b&gt;: 엔진 패치는 &lt;b&gt;AWS&lt;/b&gt;, DB 사용자 계정과 데이터 자체는 &lt;b&gt;고객&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Lambda&lt;/b&gt;: 런타임 유지보수는 &lt;b&gt;AWS&lt;/b&gt;, 함수 코드와 IAM 실행 역할은 &lt;b&gt;고객&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;S3&lt;/b&gt;: 인프라 가용성은 AWS, 버킷 정책과 암호화 설정은 고객. 그래서 S3 데이터 유출 사고가 나면 대부분 고객 잘못이다&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. IAM 심화&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 주의 메인. 노션 IAM 페이지에 아래처럼 나눠서 정리해뒀다.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;3.1 자격 증명 유형 정리&lt;/h4&gt;
&lt;div&gt;구분자격 증명 방식지속 여부사용 예
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Root User&lt;/td&gt;
&lt;td&gt;이메일/비밀번호&lt;/td&gt;
&lt;td&gt;영구&lt;/td&gt;
&lt;td&gt;계정 초기 설정, 결제 정보 변경&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;IAM User&lt;/td&gt;
&lt;td&gt;액세스 키 or 콘솔 비번&lt;/td&gt;
&lt;td&gt;영구&lt;/td&gt;
&lt;td&gt;사람 or 애플리케이션&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;IAM Group&lt;/td&gt;
&lt;td&gt;자체 자격 증명 없음&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;td&gt;사용자 묶음, 정책 일괄 부여&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;IAM Role&lt;/td&gt;
&lt;td&gt;STS 통해 임시 발급&lt;/td&gt;
&lt;td&gt;임시 (기본 1시간)&lt;/td&gt;
&lt;td&gt;서비스/크로스 계정/페더레이션&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Group에는 자격 증명이 없다&lt;/b&gt;는 점, 그리고 &lt;b&gt;Group을 Group에 중첩 못한다&lt;/b&gt;는 점이 시험 함정으로 자주 나온다.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;3.2 정책의 6가지 유형&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시험은 각 정책을 언제 써야 하는지를 물어본다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;Identity-based Policy&lt;/b&gt; (자격 증명 기반) &amp;mdash; User/Group/Role에 붙임&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Resource-based Policy&lt;/b&gt; (리소스 기반) &amp;mdash; 리소스에 직접 붙임 (S3 버킷 정책, KMS 키 정책, SNS 토픽 정책 등). &lt;b&gt;Principal 필드가 있는 게 특징&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Permission Boundary&lt;/b&gt; &amp;mdash; IAM 엔터티가 가질 수 있는 &lt;b&gt;최대 권한의 상한선&lt;/b&gt;. 실제 권한을 주는 게 아니라 &quot;여기까지&quot;라는 울타리&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Service Control Policy (SCP)&lt;/b&gt; &amp;mdash; AWS Organizations에서 계정 전체에 대한 상한선. 관리 계정 하위 계정들의 최대 권한 제한&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Session Policy&lt;/b&gt; &amp;mdash; AssumeRole 할 때 인라인으로 넘겨서 그 세션에만 적용되는 정책&lt;/li&gt;
&lt;li&gt;&lt;b&gt;ACL&lt;/b&gt; &amp;mdash; 오래된 방식 (S3 ACL). 현대 아키텍처에서는 잘 안 씀&lt;/li&gt;
&lt;/ol&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;3.3 정책 JSON 뜯어보기&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본 구조:&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;json&lt;/div&gt;
&lt;div&gt;
&lt;pre class=&quot;json&quot; style=&quot;color: #14181f;&quot;&gt;&lt;code&gt;{
  &quot;Version&quot;: &quot;2012-10-17&quot;,
  &quot;Statement&quot;: [
    {
      &quot;Sid&quot;: &quot;AllowReadOnlyS3&quot;,
      &quot;Effect&quot;: &quot;Allow&quot;,
      &quot;Action&quot;: [
        &quot;s3:GetObject&quot;,
        &quot;s3:ListBucket&quot;
      ],
      &quot;Resource&quot;: [
        &quot;arn:aws:s3:::my-bucket&quot;,
        &quot;arn:aws:s3:::my-bucket/*&quot;
      ],
      &quot;Condition&quot;: {
        &quot;IpAddress&quot;: {
          &quot;aws:SourceIp&quot;: &quot;203.0.113.0/24&quot;
        }
      }
    }
  ]
}&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;포인트:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Version은 항상 2012-10-17. 최신 문법 쓰겠다는 뜻&lt;/li&gt;
&lt;li&gt;Action은 서비스:작업 형식. 와일드카드(s3:*) 사용 가능&lt;/li&gt;
&lt;li&gt;Resource에서 버킷 자체(my-bucket)와 객체(my-bucket/*)는 &lt;b&gt;별개의 ARN&lt;/b&gt;. ListBucket은 버킷 대상, GetObject는 객체 대상&lt;/li&gt;
&lt;li&gt;Condition은 AND로 묶이고, 같은 조건 안 여러 값은 OR&lt;/li&gt;
&lt;li&gt;Resource-based policy에는 Principal 필드가 추가로 들어감 (누가 접근할 수 있는지 명시)&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;3.4 정책 평가 로직 (제일 헷갈렸던 부분)&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 번의 요청에 여러 정책이 동시에 걸릴 수 있다. AWS는 아래 순서로 판단한다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;기본은 &lt;b&gt;암묵적 거부(Implicit Deny)&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;명시적 Deny&lt;/b&gt;가 하나라도 있으면 &amp;rarr; &lt;b&gt;거부&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;SCP&lt;/b&gt;에서 허용 안 되어 있으면 &amp;rarr; 거부 (Organizations 계정인 경우)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Permission Boundary&lt;/b&gt; 밖의 권한이면 &amp;rarr; 거부&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Session Policy&lt;/b&gt; 밖의 권한이면 &amp;rarr; 거부 (임시 자격 증명일 때)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Identity-based&lt;/b&gt; 또는 &lt;b&gt;Resource-based&lt;/b&gt;에서 명시적 Allow &amp;rarr; &lt;b&gt;허용&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;아무 것도 Allow 안 됐으면 &amp;rarr; 암묵적 거부&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;핵심은 &lt;b&gt;Deny가 무조건 이긴다&lt;/b&gt;는 것과, &lt;b&gt;Permission Boundary/SCP는 권한을 주지 않고 제한만 한다&lt;/b&gt;는 것.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시나리오 예시: 개발자에게 ec2:* 정책을 이미 부여했는데, 큰 인스턴스 타입은 못 쓰게 막고 싶다면?&lt;br /&gt;&amp;rarr; 답은 &lt;b&gt;Permission Boundary&lt;/b&gt;. 기존 정책을 수정하지 않고 상한선만 걸면 됨.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1197&quot; data-origin-height=&quot;658&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b6krsr/dJMcabSkCKD/7KcF4yJUVukFtmBq2QQvqk/img.webp&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b6krsr/dJMcabSkCKD/7KcF4yJUVukFtmBq2QQvqk/img.webp&quot; data-alt=&quot;https://medium.com/@mehrdadmohsenizadeh/aws-iam-policy-evaluation-logic-0ba377e8fdaf&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b6krsr/dJMcabSkCKD/7KcF4yJUVukFtmBq2QQvqk/img.webp&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb6krsr%2FdJMcabSkCKD%2F7KcF4yJUVukFtmBq2QQvqk%2Fimg.webp&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;275&quot; data-origin-width=&quot;1197&quot; data-origin-height=&quot;658&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;https://medium.com/@mehrdadmohsenizadeh/aws-iam-policy-evaluation-logic-0ba377e8fdaf&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;3.5 STS와 임시 자격 증명&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임시 자격 증명이 왜 중요한지 부전공 수업에서는 대충 넘어갔는데, 시험에서는 이게 계속 나온다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;**STS (Security Token Service)**가 임시 자격 증명을 발급&lt;/li&gt;
&lt;li&gt;주요 API: AssumeRole, AssumeRoleWithSAML(기업 AD 페더레이션), AssumeRoleWithWebIdentity(구글/페이스북 로그인)&lt;/li&gt;
&lt;li&gt;임시 자격 증명 구성: &lt;b&gt;Access Key + Secret Key + Session Token&lt;/b&gt; (이 세 번째가 있어야 임시)&lt;/li&gt;
&lt;li&gt;기본 만료 15분~12시간, Role Chaining 시 최대 1시간&lt;/li&gt;
&lt;li&gt;만료되면 자동 회수 &amp;rarr; 유출돼도 피해 최소화&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;시험 나오는 패턴&lt;/b&gt;:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&quot;외부 감사관에게 24시간 읽기 전용 접근 부여&quot; &amp;rarr; IAM User 만들지 말고 &lt;b&gt;Role + AssumeRole&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&quot;모바일 앱 사용자가 S3에 직접 업로드&quot; &amp;rarr; &lt;b&gt;Cognito Identity Pool&lt;/b&gt; + 임시 자격 증명&lt;/li&gt;
&lt;li&gt;&quot;온프레미스 서버가 AWS 리소스 접근&quot; &amp;rarr; IAM Role + AWS STS&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;3.6 EC2와 Instance Profile&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EC2에서 S3 접근할 때 액세스 키 하드코딩하면 안 된다는 건 상식인데, 그 뒤 메커니즘이 정확히 뭐냐고 물어보면 설명이 애매했다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Role은 EC2에 직접 붙는 게 아니라 &lt;b&gt;Instance Profile&lt;/b&gt;이라는 컨테이너를 통해 붙는다&lt;/li&gt;
&lt;li&gt;콘솔에서는 자동으로 같이 만들어지지만 CLI/CloudFormation에서는 분리해서 인식해야 함&lt;/li&gt;
&lt;li&gt;인스턴스는 **인스턴스 메타데이터 서비스(IMDSv2)**를 통해 임시 자격 증명을 받는다 (http://169.254.169.254/latest/meta-data/iam/security-credentials/)&lt;/li&gt;
&lt;li&gt;SSRF 공격 방지를 위해 &lt;b&gt;IMDSv2 강제&lt;/b&gt;하는 게 모범 사례. SAA에도 나온다&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;3.7 크로스 계정 액세스 두 가지 방식&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 두 개 구분이 시험 단골이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;방식 1: Resource-based Policy로 직접 허용&lt;/b&gt;&lt;br /&gt;S3 버킷 정책에 다른 계정의 Principal을 명시. 사용자는 자기 계정 자격 증명 그대로 씀. 심플하지만 리소스 종류가 지원해야 함(S3, SQS, SNS, Lambda, KMS 등)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;방식 2: Cross-account Role AssumeRole&lt;/b&gt;&lt;br /&gt;대상 계정에 Role을 만들고 Trust Policy에 신뢰할 계정 명시. 사용자는 STS로 역할 전환. 임시 자격 증명 사용 &amp;rarr; 더 안전하고 감사 로그도 명확&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;문제 힌트&lt;/b&gt;: &quot;임시 자격 증명&quot;, &quot;역할 전환&quot; &amp;rarr; Role 방식 / &quot;특정 계정에 직접 접근 허용&quot; &amp;rarr; Resource-based&lt;/p&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4. 실전 문제 풀이&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;노션 &quot;덤프 문제 사이트&quot;(ExamTopics 기준)에서 IAM/기초 관련 문제를 골라 풀었다. 문제 번호는 ExamTopics 게시 시점 기준이라 바뀔 수 있음.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;문제 1 (ExamTopics SAA-C03 Q66 유형)&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 회사가 여러 AWS 계정을 AWS Organizations로 관리한다. 각 부서 사용자들이 특정 S3 버킷에 접근해야 하는데, &lt;b&gt;동일 조직에 속한 계정의 IAM Principal만&lt;/b&gt; 이 버킷에 접근 가능하도록 제한하려 한다. 가장 적은 운영 오버헤드로 요건을 만족시키는 방법은?&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;A. S3 버킷 정책에 조직 ID를 참조하는 aws:PrincipalOrgID 전역 조건 키를 추가한다&lt;br /&gt;B. 각 부서별로 OU를 만들고, aws:PrincipalOrgPaths 조건 키를 버킷 정책에 추가한다&lt;br /&gt;C. CloudTrail로 CreateAccount, InviteAccountToOrganization 등 이벤트를 모니터링하여 버킷 정책을 갱신한다&lt;br /&gt;D. 접근이 필요한 사용자마다 태그를 붙이고 aws:PrincipalTag 조건 키를 버킷 정책에 추가한다&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;정답: A&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;aws:PrincipalOrgID는 요청 Principal이 특정 Organization에 속하는지 한 줄로 검사한다. 조직 ID 하나만 넣으면 되니 운영 오버헤드가 가장 적다. B는 OU 단위 제어가 필요할 때 쓰고, C는 이벤트마다 정책 갱신하는 방식이라 비효율적. D는 태그 관리 부담이 커진다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;문제 2 (ExamTopics 다수 출제 유형)&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 회사의 EC2 인스턴스에서 실행되는 애플리케이션이 S3 버킷의 로그 파일을 처리해야 한다. 인스턴스는 &lt;b&gt;인터넷을 거치지 않고&lt;/b&gt; S3에 접근해야 한다. 어떤 솔루션이 이 요건을 만족시키는가?&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;A. S3용 Gateway VPC 엔드포인트를 생성하고 VPC 라우팅 테이블에 추가한다&lt;br /&gt;B. VPC에 NAT Gateway를 배포하고 인스턴스 트래픽을 라우팅한다&lt;br /&gt;C. Direct Connect 연결을 구성한다&lt;br /&gt;D. 인스턴스에 Elastic IP를 부여하고 S3 도메인으로 직접 요청한다&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;정답: A&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;S3와 DynamoDB는 &lt;b&gt;Gateway 엔드포인트&lt;/b&gt;를 지원하는 두 서비스다. 라우팅 테이블에 엔드포인트 경로를 추가하면 인터넷 게이트웨이를 거치지 않고 AWS 백본 안에서만 통신한다. NAT Gateway(B)는 인터넷을 여전히 거친다. Direct Connect(C)는 온프레미스 연결용. Elastic IP(D)는 오히려 퍼블릭 경로다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;문제 3 (ExamTopics IAM 자주 나오는 유형)&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한 개발자가 EC2에서 실행되는 애플리케이션에 IAM User의 액세스 키를 코드에 저장해 S3에 접근하도록 구현했다. 보안 감사에서 지적을 받았고, &lt;b&gt;자격 증명이 자동으로 순환&lt;/b&gt;되며 하드코딩되지 않는 방식으로 바꾸려 한다. 어떤 솔루션이 가장 적절한가?&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;A. 액세스 키를 EC2 사용자 데이터에 저장한다&lt;br /&gt;B. IAM Role을 만들어 EC2 Instance Profile로 연결한다&lt;br /&gt;C. 액세스 키를 AWS Secrets Manager에 저장하고 애플리케이션에서 호출한다&lt;br /&gt;D. IAM User에 MFA를 강제하고 액세스 키는 그대로 유지한다&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;정답: B&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;EC2에 IAM Role을 붙이면 STS가 자동으로 임시 자격 증명을 발급/순환한다. 코드에는 자격 증명이 전혀 남지 않는다. C(Secrets Manager)도 개선이지만 여전히 IAM User 액세스 키를 사용하기 때문에 근본적 해결이 아니다. A는 사용자 데이터도 평문 노출 가능. D는 MFA와 하드코딩은 별개 문제.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;5. 마치며&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;부전공 때는 IAM이 권한 관리 서비스라는 정도로만 이해했었는데, 이번 주에 정책 평가 로직을 정리하고 나서야 왜 IAM이 시험의 30%인지 감이 왔다. 특히 Permission Boundary와 SCP가 권한을 주는 게 아니라 상한선을 정한다는 점, Resource-based policy에는 Principal 필드가 있다는 점은 개념이 서로 얽혀서 여러 번 다시 봐야 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제를 풀면서 확인한 건 시나리오형 문제의 힌트 단어들이 은근히 정형화되어 있다는 점이다. 임시 자격 증명, 최소 권한, 운영 오버헤드 최소 같은 표현이 나오면 자연스럽게 특정 서비스로 답이 좁혀진다. 다음 주부터는 개념 정리와 함께 문제 풀이 비중을 조금 더 늘려야겠다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot; data-sourcepos=&quot;65:1-65:102;1205-1306&quot;&gt;팀원&lt;span&gt;&amp;nbsp;&lt;/span&gt;블로그&lt;/h3&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot; data-sourcepos=&quot;65:1-65:102;1205-1306&quot;&gt;정재현 블로그&lt;/h4&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot; data-sourcepos=&quot;65:1-65:102;1205-1306&quot;&gt;&lt;a href=&quot;https://blog.naver.com/jjaehyun__/224337350464&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://blog.naver.com/jjaehyun__/224337350464&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1783424413563&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[2026 하계 모각코] 1주차 모임&quot; data-og-description=&quot;1주: 토익 구조 파악 + LC Part 1~2 입문 일단 첫 주는 &amp;quot;토익이 어떻게 생긴 시험인지&amp;quot; 감을 ...&quot; data-og-host=&quot;blog.naver.com&quot; data-og-source-url=&quot;https://blog.naver.com/jjaehyun__/224337350464&quot; data-og-url=&quot;https://blog.naver.com/jjaehyun__/224337350464&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/beRrey/dJMb9llix1h/U3ioOGmxgKHeaGH2xaQq01/img.png?width=270&amp;amp;height=270&amp;amp;face=0_0_270_270&quot;&gt;&lt;a href=&quot;https://blog.naver.com/jjaehyun__/224337350464&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://blog.naver.com/jjaehyun__/224337350464&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/beRrey/dJMb9llix1h/U3ioOGmxgKHeaGH2xaQq01/img.png?width=270&amp;amp;height=270&amp;amp;face=0_0_270_270');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[2026 하계 모각코] 1주차 모임&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1주: 토익 구조 파악 + LC Part 1~2 입문 일단 첫 주는 &quot;토익이 어떻게 생긴 시험인지&quot; 감을 ...&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;blog.naver.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot; data-sourcepos=&quot;65:1-65:102;1205-1306&quot;&gt;박소윤 블로그&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://coding567.tistory.com/126&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://coding567.tistory.com/126&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1783424426428&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[2026하계모각코] 1차시 결과&quot; data-og-description=&quot;1차시: AWS-SAA C03 개념정리(노션) 및 시험 예약 1. 시험 예약https://wsr.pearsonvue.com/testtaker/registration/Dashboard/AWS Pearson VUE - 경고!경고! 보안상의 이유로 인해 세션이 비활성화되었습니다. 일반적으로 &quot; data-og-host=&quot;coding567.tistory.com&quot; data-og-source-url=&quot;https://coding567.tistory.com/126&quot; data-og-url=&quot;https://coding567.tistory.com/126&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/e0FKx/dJMb9frQRVd/mH18SF50u3I5DRYutoSbJ1/img.png?width=800&amp;amp;height=282&amp;amp;face=0_0_800_282,https://scrap.kakaocdn.net/dn/bYoHgx/dJMb9b33tKh/DGJlhpLUNrbFynpIQBsOck/img.png?width=800&amp;amp;height=282&amp;amp;face=0_0_800_282,https://scrap.kakaocdn.net/dn/cbT0vY/dJMb9ia2Apt/nUjUciKvub5TMur3EYQkXK/img.png?width=2226&amp;amp;height=786&amp;amp;face=0_0_2226_786&quot;&gt;&lt;a href=&quot;https://coding567.tistory.com/126&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://coding567.tistory.com/126&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/e0FKx/dJMb9frQRVd/mH18SF50u3I5DRYutoSbJ1/img.png?width=800&amp;amp;height=282&amp;amp;face=0_0_800_282,https://scrap.kakaocdn.net/dn/bYoHgx/dJMb9b33tKh/DGJlhpLUNrbFynpIQBsOck/img.png?width=800&amp;amp;height=282&amp;amp;face=0_0_800_282,https://scrap.kakaocdn.net/dn/cbT0vY/dJMb9ia2Apt/nUjUciKvub5TMur3EYQkXK/img.png?width=2226&amp;amp;height=786&amp;amp;face=0_0_2226_786');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[2026하계모각코] 1차시 결과&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1차시: AWS-SAA C03 개념정리(노션) 및 시험 예약 1. 시험 예약https://wsr.pearsonvue.com/testtaker/registration/Dashboard/AWS Pearson VUE - 경고!경고! 보안상의 이유로 인해 세션이 비활성화되었습니다. 일반적으로&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;coding567.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;1주차 모임 사진&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2026-07-03 오후 10.29.20.png&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;1884&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/k3GW3/dJMcafN4Ygd/vfvLqIkSKLWNavnmrMxrdK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/k3GW3/dJMcafN4Ygd/vfvLqIkSKLWNavnmrMxrdK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/k3GW3/dJMcafN4Ygd/vfvLqIkSKLWNavnmrMxrdK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fk3GW3%2FdJMcafN4Ygd%2FvfvLqIkSKLWNavnmrMxrdK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;249&quot; data-filename=&quot;스크린샷 2026-07-03 오후 10.29.20.png&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;1884&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <author>K0ngs</author>
      <guid isPermaLink="true">https://estherr.tistory.com/2</guid>
      <comments>https://estherr.tistory.com/2#entry2comment</comments>
      <pubDate>Tue, 7 Jul 2026 20:41:40 +0900</pubDate>
    </item>
    <item>
      <title>2026 하계 모각코 계획</title>
      <link>https://estherr.tistory.com/1</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;이번에 팀원들과 함께 AWS SAA(SAA-C03) 자격증 취득을 목표로 6주간 모각코 스터디를 진행합니다. 주 1회 모여 각자 공부하고, 마지막에 그 주 핵심 개념을 서로 점검하는 방식입니다.&lt;/p&gt;
&lt;h2 data-sourcepos=&quot;5:1-5:10;135-144&quot; data-ke-size=&quot;size26&quot;&gt;스터디 멤버&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-sourcepos=&quot;7:1-9:10;146-167&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;7:1-7:6;146-151&quot;&gt;정재현&lt;/li&gt;
&lt;li data-sourcepos=&quot;8:1-8:6;152-157&quot;&gt;박소윤&lt;/li&gt;
&lt;li data-sourcepos=&quot;9:1-9:10;158-167&quot;&gt;박경서&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-sourcepos=&quot;11:1-11:19;169-187&quot; data-ke-size=&quot;size26&quot;&gt;시험 정보 (SAA-C03)&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-sourcepos=&quot;13:1-15:51;189-287&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;13:1-13:26;189-214&quot;&gt;문항 수: 65문항 / 시험 시간 130분&lt;/li&gt;
&lt;li data-sourcepos=&quot;14:1-14:22;215-236&quot;&gt;합격 점수: 720점 / 1000점&lt;/li&gt;
&lt;li data-sourcepos=&quot;15:1-15:51;237-287&quot;&gt;출제 도메인: 보안(30%), 복원력(26%), 고성능(24%), 비용 최적화(20%)&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-sourcepos=&quot;17:1-17:26;289-314&quot; data-ke-size=&quot;size16&quot;&gt;도메인 비중에 맞춰 6주 계획을 배분했습니다.&lt;/p&gt;
&lt;h2 data-sourcepos=&quot;19:1-19:10;316-325&quot; data-ke-size=&quot;size26&quot;&gt;주차별 계획&lt;/h2&gt;
&lt;h3 data-sourcepos=&quot;21:1-21:23;327-349&quot; data-ke-size=&quot;size23&quot;&gt;1주차 - AWS 기초 &amp;amp; IAM&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-sourcepos=&quot;22:1-24:17;350-425&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;22:1-22:25;350-374&quot;&gt;AWS 글로벌 인프라(리전, 가용 영역)&lt;/li&gt;
&lt;li data-sourcepos=&quot;23:1-23:34;375-408&quot;&gt;IAM 기본(사용자, 그룹, 역할, 정책), MFA 설정&lt;/li&gt;
&lt;li data-sourcepos=&quot;24:1-24:17;409-425&quot;&gt;EC2 인스턴스 생성 실습&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-sourcepos=&quot;26:1-26:31;427-457&quot; data-ke-size=&quot;size23&quot;&gt;2주차 - 보안 아키텍처 (도메인 1, 30%)&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-sourcepos=&quot;27:1-29:32;458-535&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;27:1-27:27;458-484&quot;&gt;IAM 심화, STS, Assume Role&lt;/li&gt;
&lt;li data-sourcepos=&quot;28:1-28:19;485-503&quot;&gt;암호화(KMS), S3 암호화&lt;/li&gt;
&lt;li data-sourcepos=&quot;29:1-29:32;504-535&quot;&gt;보안 그룹 vs NACL, WAF, GuardDuty&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-sourcepos=&quot;31:1-31:32;537-568&quot; data-ke-size=&quot;size23&quot;&gt;3주차 - 복원력 아키텍처 (도메인 2, 26%)&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-sourcepos=&quot;32:1-34:21;569-640&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;32:1-32:27;569-595&quot;&gt;다중 AZ, ELB, Auto Scaling&lt;/li&gt;
&lt;li data-sourcepos=&quot;33:1-33:24;596-619&quot;&gt;RDS 다중 AZ / 읽기 전용 복제본&lt;/li&gt;
&lt;li data-sourcepos=&quot;34:1-34:21;620-640&quot;&gt;SQS, SNS, Route 53&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-sourcepos=&quot;36:1-36:32;642-673&quot; data-ke-size=&quot;size23&quot;&gt;4주차 - 고성능 아키텍처 (도메인 3, 24%)&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-sourcepos=&quot;37:1-39:41;674-769&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;37:1-37:31;674-704&quot;&gt;컴퓨팅 옵션(EC2, Lambda, ECS/EKS)&lt;/li&gt;
&lt;li data-sourcepos=&quot;38:1-38:24;705-728&quot;&gt;스토리지(EBS, EFS, S3 성능)&lt;/li&gt;
&lt;li data-sourcepos=&quot;39:1-39:41;729-769&quot;&gt;캐싱(CloudFront, ElastiCache), 데이터베이스 선택&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-sourcepos=&quot;41:1-41:35;771-805&quot; data-ke-size=&quot;size23&quot;&gt;5주차 - 비용 최적화 (도메인 4, 20%) &amp;amp; 복습&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-sourcepos=&quot;42:1-45:14;806-908&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;42:1-42:35;806-840&quot;&gt;EC2 구매 옵션(예약, 스팟, Savings Plans)&lt;/li&gt;
&lt;li data-sourcepos=&quot;43:1-43:22;841-862&quot;&gt;S3 스토리지 클래스 &amp;amp; 수명 주기&lt;/li&gt;
&lt;li data-sourcepos=&quot;44:1-44:32;863-894&quot;&gt;비용 도구(Cost Explorer, Budgets)&lt;/li&gt;
&lt;li data-sourcepos=&quot;45:1-45:14;895-908&quot;&gt;1~4주차 통합 복습&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-sourcepos=&quot;47:1-47:23;910-932&quot; data-ke-size=&quot;size23&quot;&gt;6주차 - 모의고사 &amp;amp; 최종 점검&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-sourcepos=&quot;48:1-50:16;933-993&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-sourcepos=&quot;48:1-48:26;933-958&quot;&gt;실전 모의고사 2~3회 (시간 재고 풀기)&lt;/li&gt;
&lt;li data-sourcepos=&quot;49:1-49:19;959-977&quot;&gt;오답 정리, 약점 도메인 보강&lt;/li&gt;
&lt;li data-sourcepos=&quot;50:1-50:16;978-993&quot;&gt;시험 신청 및 최종 점검&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-sourcepos=&quot;52:1-52:9;995-1003&quot; data-ke-size=&quot;size26&quot;&gt;6주 요약&lt;/h2&gt;
&lt;div data-sourcepos=&quot;54:1-61:25;1005-1195&quot;&gt;주차주제도메인
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1주차&lt;/td&gt;
&lt;td&gt;AWS 기초 + IAM&lt;/td&gt;
&lt;td&gt;공통&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2주차&lt;/td&gt;
&lt;td&gt;보안&lt;/td&gt;
&lt;td&gt;도메인 1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3주차&lt;/td&gt;
&lt;td&gt;복원력&lt;/td&gt;
&lt;td&gt;도메인 2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4주차&lt;/td&gt;
&lt;td&gt;고성능&lt;/td&gt;
&lt;td&gt;도메인 3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5주차&lt;/td&gt;
&lt;td&gt;비용 최적화 + 복습&lt;/td&gt;
&lt;td&gt;도메인 4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6주차&lt;/td&gt;
&lt;td&gt;모의고사 + 점검&lt;/td&gt;
&lt;td&gt;전체&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;h2 data-sourcepos=&quot;63:1-63:7;1197-1203&quot; data-ke-size=&quot;size26&quot;&gt;마치며&lt;/h2&gt;
&lt;p data-sourcepos=&quot;65:1-65:102;1205-1306&quot; data-ke-size=&quot;size16&quot;&gt;도메인별로 한 주씩 나눠 진행하면 6주 안에 충분히 소화할 수 있는 분량입니다.&lt;/p&gt;
&lt;p data-sourcepos=&quot;65:1-65:102;1205-1306&quot; data-ke-size=&quot;size16&quot;&gt;다른 팀원들과 함께 완주하는 것이 목표이고, 매주 학습 내용을 블로그에 정리해 이어가겠습니다.&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;h3 data-sourcepos=&quot;65:1-65:102;1205-1306&quot; data-ke-size=&quot;size23&quot;&gt;팀원 블로그&amp;nbsp;&lt;/h3&gt;
&lt;h4 data-sourcepos=&quot;65:1-65:102;1205-1306&quot; data-ke-size=&quot;size20&quot;&gt;정재현 블로그&lt;/h4&gt;
&lt;p data-sourcepos=&quot;65:1-65:102;1205-1306&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://blog.naver.com/jjaehyun__/224329814045&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://blog.naver.com/jjaehyun__/224329814045&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1782654734250&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[2026 하계 모각코] 6주간의 계획&quot; data-og-description=&quot;1주: 토익 구조 파악 + LC Part 1~2 입문 2주: LC Part 3~4 + RC Part 5 문법 기초 3주: RC Pa...&quot; data-og-host=&quot;blog.naver.com&quot; data-og-source-url=&quot;https://blog.naver.com/jjaehyun__/224329814045&quot; data-og-url=&quot;https://blog.naver.com/jjaehyun__/224329814045&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/m1Xlj/dJMb88fbgF3/f3CHykSA4xuH6qB8e4T9I1/img.png?width=270&amp;amp;height=270&amp;amp;face=0_0_270_270&quot;&gt;&lt;a href=&quot;https://blog.naver.com/jjaehyun__/224329814045&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://blog.naver.com/jjaehyun__/224329814045&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/m1Xlj/dJMb88fbgF3/f3CHykSA4xuH6qB8e4T9I1/img.png?width=270&amp;amp;height=270&amp;amp;face=0_0_270_270');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[2026 하계 모각코] 6주간의 계획&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1주: 토익 구조 파악 + LC Part 1~2 입문 2주: LC Part 3~4 + RC Part 5 문법 기초 3주: RC Pa...&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;blog.naver.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-sourcepos=&quot;65:1-65:102;1205-1306&quot; data-ke-size=&quot;size20&quot;&gt;박소윤 블로그&lt;/h4&gt;
&lt;p data-sourcepos=&quot;65:1-65:102;1205-1306&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://coding567.tistory.com/124&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://coding567.tistory.com/124&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1782654667728&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[2026하계모각코] 전체학습계획&quot; data-og-description=&quot;1차시: AWS-SAA C03 개념정리(노션) 및 시험 예약2차시: 덤프 문제 풀이 및 오답정리3차시: 덤프 문제 풀이 및 오답정리4차시: 덤프 문제 풀이 및 오답정리5차시: 덤프 문제 풀이 및 오답정리6차시: 시&quot; data-og-host=&quot;coding567.tistory.com&quot; data-og-source-url=&quot;https://coding567.tistory.com/124&quot; data-og-url=&quot;https://coding567.tistory.com/124&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/kMfgb/dJMb8Yp5V6L/CZf1uKtnNQL81nkzleJzg1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/KID0g/dJMb88Gfy81/zWrw5cLOFCsILccganp8EK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://coding567.tistory.com/124&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://coding567.tistory.com/124&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/kMfgb/dJMb8Yp5V6L/CZf1uKtnNQL81nkzleJzg1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/KID0g/dJMb88Gfy81/zWrw5cLOFCsILccganp8EK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;[2026하계모각코] 전체학습계획&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;1차시: AWS-SAA C03 개념정리(노션) 및 시험 예약2차시: 덤프 문제 풀이 및 오답정리3차시: 덤프 문제 풀이 및 오답정리4차시: 덤프 문제 풀이 및 오답정리5차시: 덤프 문제 풀이 및 오답정리6차시: 시&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;coding567.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <author>K0ngs</author>
      <guid isPermaLink="true">https://estherr.tistory.com/1</guid>
      <comments>https://estherr.tistory.com/1#entry1comment</comments>
      <pubDate>Sun, 28 Jun 2026 22:52:28 +0900</pubDate>
    </item>
  </channel>
</rss>