목록분류 전체보기 (271)
전공공부
정확하지는 않으나 ServiceAccount는 token을 생성하고 생성된 토큰 정보를 이용해서 각 pod에 도달 할 수 있는 역할을 수행한다. 예를 들어서 ca.crt 등 요청으로 curl 날려서 API 요청을 일일이 했던 것을 serviceaccount를 이용해서 연결을 하는데 ServiceAccounts만들고 k create token SECRET_ACCOUNT_NAME 을 하면 해당 정보로 도달 할 수 있는 토큰을 주고 이를 사용하여도 되고 아니면 아래와 같이 RoleBinding에 설정해서 접근 권한의 대한 허가를 주고 이때에 Deployments에도 해당 ServiceAccount로 접근 가능하게 설정을 하면 된다. apiVersion: v1 kind: Pod metadata: name: my..
설명 PRIM으로 풀고 성별에 따른 의존성을 Data 객체에 추가했다. 그리고, 이를 모두 다 이어지지 못한 경우에 예외처리를 더하여 문제의 조건을 알맞게 맞췄다. 코드 package MST; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; import java.util.PriorityQueue; import java.util.StringTokenizer; public class BOJ_14621 { private static class Data implements Comparable{ int en..
설명 타입만 잘 지정하면 된다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.PriorityQueue; import java.util.StringTokenizer; public class Main { static class Data implements Comparable{ int end; int weight; public Data(int end, int weight) { this.end = end; this.weight = weight; } @Override public int compareTo(Da..
설명 자료형 때문에 꽤나 애 먹었던 문제다. long 캐스팅이 잘 안 되어서 오래걸렸다. Prim 알고리즘을 사용했고 입력으로 들어오는 값은 거리를 구하는 것에 사용하고 list의 인덱스는 거리가 입력으로 들어오는 순서에 따라서 지정을 하고 이에 따른 거리값을 weight 값으로 넣었다. 코드 package MST; import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; import java.util.PriorityQueue; import java.util.StringTokenizer; public class BOJ_1774 { static class D..
이전 내용에서는 사용자를 네임스페이스 리소스(Pod,Deployments,...)에 인증하는 방법을 알아보았습니다. 우리는 그것에 Roles 및 RoleBindings을 사용했구요. 그러나, 사용자에게 Node 또는 PV와 같은 클러스터 범위의 리소스에 권한을 부여하려면 어떻게 해야 할까요? 해결법은 Cluster Roles 및 Cluster Role Bindings을 쓰면 됩니다. 클러스터 롤 (Cluster Roles) 클러스터 롤은 롤과 매우 유사하지만 클러스터 범위의 리소스를 위한 것입니다. 예를 들어 클러스터 관리자 롤을 만들어 클러스터 관리자에게 클러스터 내의 노드를 보거나 만들거나 삭제할 수 있는 권한을 부여할 수 있습니다. 마찬가지로 스토리지 관리자 롤을 만들어 스토리지 관리자에게 PV, ..
우리는 전에 ABAC 방식이나 Node 방식등을 알아 봤습니다. 그때, 저희는 Role에 따라서 주는것이 좋은 걸 알았죠. 그리고, core 그룹과 named API 그룹에 대해서 알아봤습니다. 아래와 같이 설정을 하고 Role을 아래와 같이 만들 수 있습니다. 이때, 이렇게 만들어지면 pods 리소스에 대해서는 get 요청 및 list,create,update,delete의 요청이 가능합니다. 또한, 이후에 아래 명령어로 Role 개채 생성 한 후 Role을 각 유저에 바인딩 해줍시다. RoleBinding apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: namespace: default name: developer rules: - apiG..
설명 프림 알고리즘을 활용하여 인접 행렬을 인접 리스트 형식으로 받아서 처리했다. 코드 package MST; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.PriorityQueue; import java.util.StringTokenizer; public class BOJ_16398 { static class Data implements Comparable { int end; int weight; public Data(int end, int weight) { this.end = end; this.weigh..
쿠버네티스에서 권한 부여는 어떻게 이루어 질 수 있는지 알아봅시다. ABAC - 특성 베이스 각 특성에 맞는 권한을 일일이 부여해야 하고 이는 Kube API 서버를 다시 시작하게 끔한다. 그런데 이는 매우 비효율적인 방법이다. 개발자 한 명이 추가 될 때마다 그에 맞는 특성을 개발자 1에게 모두 직접 부여하고 API SERVER를 껐다 키는게 정상은 아니니 말이다. RBAC - Rule 베이스 개발자는 개발자 권한을 부여한다. 보안 담당자는 보안 담당 권한을 부여한다. 즉, 자신의 권한에 맞는 권한 부여 셋팅을 미리 내려주고 이는 API SERVER가 읽어서 바로 적용 될 수 있게 한다. 일반적인 방법이다. Authorization Mode 인증에는 모드가 존재한다. 아래는 모드의 종류임 NODE는 노..