본문 바로가기

전체 글

[Azure] 키 자격모음, PostgresSQL 서버 관리 - HSM, KVM: 암호화 키를 어플리케이션에 저장할 때 노출될 위험을 줄이기 위한 장치어플리케이션에 저장하지 않고 그때그때 쓸 수 있도록 해주는 것이 키 자격 증명 모음Key vaults 자격 증명 만들기허가받은 사람만 접근 가능하도록 제한하는 기능 Azure  역할 기반 액세스 제어를 누른다.참고) 자격 증명 모음 액세스 정책(vault access policy)을 누르면 각 사용자에 대해서 어떠한 정책을 사용할 수 있는지 확인할 수 있다. 네트워킹 보안을 위해 선택한 네트워크만 접속할 수 있도록 설정한다.추가한 후에 신뢰할 수 있는 네트워크만 들어올 수 있도록 check한다.Tag는 굳이 설정할 필요 없고, 유효성 검사해준 뒤 배포한다.그런데 리소스를 들어가보면 RBAC에서 작업을 허용하지 않는다.. 더보기
[Linux] Shell Shell명령어 해석기 또는 명령 행 인터페이스로, 사용자와 커널 사이에서 명령어를 해석하여 처리한다Shell script는 텍스트 파일로, 반복적으로 수행되는 작업을 Shell script로 작성할 수 있다.세미콜론(;)을 사용하면 한 라인에 여러 명령을 입력할 수 있다.셸은 Bash를 기본 셸로 사용하며, 일반사용자는 $, root 사용자는 #을 사용한다.Bash shellBourne Again Shell로 Bourne shell의 개선된 버전많은 셸 스크립트의 문법이 Bourne shell에 기반을 둠실행 명령은 /bin/bash기본 셸을 변경할 수 있음chsh -s /bin/sh 셸 명령의 형식> 명령어 옵션 인수대개 명령어는 프로그램의 이름인수는 명령의 수행 대상을 지정하는 것grep "Kild.. 더보기
[c++] C++ 변수의 특징 일반변수, 구조체, 배열, 클래스에 따라 초기화 방법이 다르다.auto→ 컴파일할 때 타입을 결정, 실행 시 오버헤드는 없다.→ 단점: 가독성이 떨어진다. int main(){ int x[5] = {1,2,3,4,5}; auto n = x[0]; // auto : 변수 선언시, 우변의 표현식 조사해서 컴파일러가 타입 결정 } decltype→ ()안의 표현식으로 타입을 결정→ 함수(클래스) 템플릿 등을 만들 때 주로 사용decltype(n) n1; //int n1;배열과 auto//int x[5] = {1,2,3,4,5}; 일 때//auto a = x; //int a[5] = x; //이렇게 결정되었다면 컴파일 에러//int* a = x; decltype(x) d;decltype(x) d1 = x; //.. 더보기
[C++] iosteam 표준 입출력 ## C++ 표준 입출력 c++에서의 표준 함수들은 함수 앞에 std:: 를 붙여주어야 사용할 수 있다. CC++출력printf 함수std::cout 객체변수값 출력%d, %f 필요format 지시어 필요 없음특징 개행 \n\n 또는 std::endl입력scanf 함수- 주소를 전달 (&n)std::cin 객체- 주소가 아닌 n으로 전달헤더파일std::cout 객체C++ 초창기부터 사용되던 표준 출력 객체단점 1: 여러 개 변수 출력시 코드 복잡단점 2: 성능이 느리다 (printf 사용..)#include //stdio.h#include int main(){ int n = 10; double d = 3.4; printf("%d, %f \n", n, d); //c언어 std::co.. 더보기
[c++] std namespace / header file ✔ std namespace max, min 함수 → c++ 표준이 제공하는 함수→ 헤더→  모든 C++ 표준 함수는 "std" namespace 안에 있다. ① 기본 사용- 가장 권장하는 방법// qualified name#include #include int main(){ int n1 = std::max(10, 20); int n2 = std::min(10, 20); printf("%d, %d\n", n1, n2);}② using 사용// qualified name#include #include using std::max;using std::min;int main(){ int n1 = max(10, 20); int n2 = min(10, 20); printf("%d, %d\n", n1, n2);}③.. 더보기
[C++] namespace C언어동일한 이름의 함수는 2개 이상 만들 수 없다.함수의 이름을 변경해야 한다.C++ 언어namespace 문법을 사용하면 관련된 코드(함수, 구조체, 전역 변수 등)을 묶어서 관리할 수 있다.서로 다른 이름 공간에서는 동일한 이름 사용할 수 있다.#include namespace Audio{ void init(){ printf("Init Audio Module\n"); }}namespace Video{ void init(){ printf("Init Video Module\n"); }}int main(){ //init(); Audio::init(); Video::init();}#include "Video.h"// 방법 1. 권장namesp.. 더보기
[C언어] 기억클래스 #기억클래스(storage class)변수를 기억공간의 특정영역에 할당하는 방법변수의 사용위치에 따라지역 / 전역 변수변수의 존속기간에 따라자동변수/정적변수/외부변수/레지스터변수전역변수: 함수 밖이나 외부파일에서 선언되어 프로그램 전체에 걸쳐 사용될 수 있는 변수동일 범위 내에서는 지역변수가 우선전역변수의 선언은 프로그램 선두에 위치가급적 지역변수 사용하는 것이 효율적함수의 독립성 향상, 디버깅 효율 향상, 기억공간 절약# 자동변수함수 실행시 만들어지게 되고, 실행이 끝나면 기억공간이 제거됨예약어 auto 사용(생략 가능)통용 범위는 변수가 선언된 블록이나 함수 내로 한정지역변수에 해당초기화가 필요# 정적 변수기억영역이 프로그램 끝날 때까지 유지예약어 static 사용전역 변수에 해당변수의 값은 프로그램.. 더보기
[C언어] typedef # typedef이미 존재하는 자료형에 새로운 이름을 붙이기 위한 키워드간단하거나 의미있는 이름으로 바꿀 수 있어 프로그램 이해가 쉽다.구조체 형을 선언하는 데 많이 사용형식) typedef 기존 자료형 새로운 자료형이름;사용예) typedef int INT; typedef 의 사용typedef unsigned int BYTE;  //unsigned int 형을 BYTE라는 새로운 이름으로 정의BYTE val ; typedef int *PTR;PTR p1,p2; #include struct data{ int x; int y;};typedef struct data DATA; // struct data를 DATA로 정의 int main(){ DATA d={1,2}; printf("d.x=%d,d.y=%d\n.. 더보기