1. How can users access AWS ? - To access AWS, you have three options: • AWS Management Console (protected by password + MFA) • AWS Command Line Interface (CLI): protected by access keys • AWS Software Developer Kit (SDK) - for code: protected by access keys - Access Keys are generated through the AWS Console - Users manage their own access keys - Access Keys are secret, just lik..
My Tech Blog (Coding)
IAM Policies StructureIAM JSON ํ์ผ์ AWS์์ IAM(Identity and Access Management) ์ ์ฑ
์ ์ ์ํ ๋ ์ฌ์ฉ๋๋ ํ์ผ ํ์์ด๋ค. ์ด ํ์ผ์ JSONํ์์ผ๋ก ์์ฑ๋๋ฉฐ, ์ฌ์ฉ์, ๊ทธ๋ฃน, ์ญํ (Role) ๋ฑ์ ๋ํ ๊ถํ(permissions)์ ์ค์ ํ๋ ๋ฐ ์ฐ์ธ๋ค. IAM JSON StructureIAM JSON ํ์ผ์ AWS ๋ฆฌ์์ค์ ๋ํด ํ์ฉ(Allow)ํ๊ฑฐ๋ ๊ฑฐ๋ถ(Deny)ํ ์์
์ ๋ช
์ํ๋ ์ ์ฑ
(policy)์ ์ ์ํ๋ค.์ด๋ฅผ ํตํด ์ด๋ค ์ฌ์ฉ์๊ฐ ์ด๋ค AWS ์๋น์ค์์ ์ด๋ค ์์
์ ์ํํ ์ ์๋์ง๋ฅผ ์ ์ดํ๋ค.JSON ํ์ผ ์์ JSON ํ์ผ ํ๋Consists of• Version: policy language version, always incl..
IAM Identity and Access Management- ์ฌ์ฉ์๋ฅผ ์์ฑํ๊ณ ๊ทธ๋ฃน์ ๋ฐฐ์นํ๊ธฐ ๋๋ฌธ์ Global Service- Root account created by default, shouldn't be used or shared - Users are people within your organization, and can be grouped- Groups only contain users, not other groups- Users don't have to belong to a group, and user can belong to multiple groups IAM: Permissions- Users or Groups can be assinged JSON documents called po..
Sensor1_X:66,Sensor1_Y:69,Sensor1_Z:61,Sensor2_X:-14,Sensor2_Y:20,Sensor2_Z:-20….(์ค๋ต)>์ด๋ฐ ๊ฒ ๊ณ์ ๋ฐ๋ณต๋จ , ๊ธฐ์ค์ผ๋ก ๋ฐ์ดํฐ ๋๋๋ ค๊ณ ํจ. data = "Sensor1_X:70,Sensor1_Y:53,Sensor1_Z:73,Sensor2_X:1,Sensor2_Y:1,Sensor2_Z:1" # ์์ ๋ฐ์ดํฐ# ','๋ก ๋ฐ์ดํฐ๋ฅผ ๋๋sensor_data = data.split(',')# ':'๋ก ๋ค์ ๋๋์ด์ ๊ฐ๊ฐ์ ์ผ์ ๊ฐ ์ถ์ถsensor_dict = {}for sensor in sensor_data: sensor_name, value = sensor.split(':') sensor_dict[sensor_name] = int(..
# ํ
ํ๋ฆฟ ๋ฆฌํฐ๋ด(Template Literal)ES6๋ถํฐ ์๋ก ๋์
๋ ๋ฌธ์์ด ํ๊ธฐ๋ฒ๋ฌธ์์ด ์์ฑ์ ๋ฐ์ดํ ๋์ , ๋ฐฑํฑ(`)์ ์ฌ์ฉvar str_01 = `hello world`;//๋ฐฑํฑ ์ฌ์ฉconst x='x';const y='y';const z='z';console.log(`${x}๋ x, ${y}๋ y, ${z}๋ z์ด๋ค. `); //x๋ x, y๋ y, z๋ z์ด๋ค. โถ๏ธ ๋ฐฑํฑ(`)์ ์๋ฐ์คํฌ๋ฆฝํธ JS ES6(ECMAScript 2015)๋ถํฐ ๋์
๋์๋ค.โถ๏ธ ๊ฐํ ๋ฌธ์(\n)๋ฅผ ์ฌ์ฉํ์ง ์์๋ ์๋ ์ค๋ฐ๊ฟ โถ๏ธ ์๊น์๊ฐ ์์๋ฐ์ํ(')์ ๋น์ทํ๋ ํท๊ฐ๋ฆฌ์ง ์๋๋ก ์ฃผ์# ํ
ํ๋ฆฟ ๋ฆฌํฐ๋ด - ๋ฐฑํฑ(`)์ ๊ธฐ๋ฅ ์ค๋ฐ๊ฟ(๊ฐํ: Multi-line strings) โถ๏ธ ๋ฐฑํฑ(`)์ผ๋ก ํ
ํ๋ฆฟ ๋ฆฌํฐ๋ด์ ์ฌ์ฉํ๋ฉด..
// JSON ๋ฐ์ดํฐ ๋ค๋ฃจ๊ธฐ ์ํ JS ์ฌ์ฉ๋ฒ// [1] : ๋ฐ์ดํฐ const person = [ `{"name":"์ด์์ ","age":20,"nationality":"๋ํ๋ฏผ๊ตญ"}`, {"name":"๋งฅ์๋","age":30,"nationality":"๋ฏธ๊ตญ"}, {"name":"์๋ฆฌ์๋ฒ ์ค","age":40,"nationality":"์๊ตญ"}, {"name":"์๋ค๋ฅดํฌ","age":50,"nationality":"ํ๋์ค"},]; console.log(typeof person); // objectconsole.log(typeof person[0]); // stringconsole.log(typeof person[1]); // object ์ฒซ๋ฒ์งธ ์์๋ฅผ ์์ ๋ฐ์ดํ๋ก ๊ฐ์ธ๋ฉด string ..
Visual Studio Code (VSCode)์์ Python์ ์ค์นํ๊ณ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ 1. Python ์ค์น์ผ๋จ ์ฃผ์ํ ์ ์ Python ๊ณต์ ์น์ฌ์ดํธ์์ ๋ค์ด๋ก๋ํ๊ธฐ ๋ง์ดํฌ๋ก์ํํธ ์คํ ์ด ์ฑ ๋ค์ด X ์ค์ํ ์ !์ค์น ๊ณผ์ ์์ ๋ฐ๋์ "Add Python to PATH" ์ฒดํฌ๋ฐ์ค๋ฅผ์ ํํด์ผ ํ๊ฒฝ๋ณ์์ ์๋์ผ๋ก ๋ฑ๋กํจ.(์ด ์ต์
์ ์ ํํ์ง ์์ผ๋ฉด VSCode์์ Python์ ์คํํ ๋ ๋ฌธ์ ๊ฐ ์๊ธธ ์ ์์)์์คํ
> ํ๊ฒฝ๋ณ์์ ํ์ด์ฌ ์ง์ ๋ฑ๋กํด ์ฃผ์ด์ผ ํจ ์ด๋ ๊ฒ ๋ ๊ฐ ๋ฑ๋กํด ์ฃผ์ด์ผ ํจ. C:\Python39 ๋๋ C:\Users\YourUser\AppData\Local\Programs\Python\Python39 (์ค์น ๊ฒฝ๋ก)C:\Python39\Script 2. VSCode์์ Python ํ์ฅ..
์๋ฐ JDBC๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฐ๊ฒฐํ ๋ ์ฌ์ฉํ ์์์ `connection.close()` ์ฒ๋ผ `close()` ๋ฉ์๋๋ฅผ ์ฌ์ฉํด์ ๋ซ์ ์ฃผ์ด์ผ ํ๋ค. ํ์ง๋ง try with resources ๊ตฌ๋ฌธ์ ์ฌ์ฉํ๋ฉด ๋ณ๋๋ก ์์ํด์ ๋ฅผ ์ ํด ์ค๋ ๋๋ค. try ๊ตฌ๋ฌธ์์ ์์์ ์ ์ธํ๋ฉด ์๋์ผ๋ก ํด์ ๋๊ธฐ ๋๋ฌธ์ด๋ค.์ด์ฒ๋ผ try-with-resources๋ ๋ฆฌ์์ค ๊ด๋ฆฌ๊ฐ ์ค์ํ ํ๋ก๊ทธ๋จ์์ ์ค๋ฅ๋ฅผ ๋ฐฉ์งํ๊ณ ์ฝ๋ ํ์ง์ ๋์ด๋ ๋งค์ฐ ์ ์ฉํ ๊ธฐ๋ฅ์ด๋ค. ํ์ผ ์
์ถ๋ ฅ, ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ, ๋คํธ์ํฌ ์์ผ ๋ฑ ๋ค์ํ ์ํฉ์์ ํ์ฉ ๊ฐ๋ฅํ๋ค. ๊ธฐ๋ณธ์ฌ์ฉ๋ฒ์ฝ๋์์ ๋ณผ ์ ์๋ฏ์ด try-with-resources์ ๊ธฐ๋ณธ ํ์์ try๋ฌธ ์์์ ์์์ ์ ์ธํ๋ ๊ฒ์ด๋ค.try (๋ฆฌ์์ค_ํ์
๋ฆฌ์์ค_์ด๋ฆ = new ๋ฆฌ์์ค_ํ์
()) {..