일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- start
- MARQUEE
- 얼큰 칼국수
- 흐르는
- 안드로이드
- 중동 맛집
- Android
- git
- 가성비 맛집
- 가성비
- 칼국수
- middle
- git 권한
- Github
- 송내
- git 토큰생성
- git token 연동
- git 보안 방법
- 사이드프로젝트
- ellipsize
- 깃 회원가입
- 내가 보려 만든 코드
- android studio
- 부천 맛집
- 맛집
- 송내 맛집
- textview
- git 안드로이드 연동
- ...
- java
- Today
- Total
송내사는개발자
[Git] 깃 토큰 발급시 권한에 대한 설명 본문
1. Git 토큰 발급 시 고려해야 할 사항
- 토큰은 해당 애플리케이션이 필요로 하는 특정 작업에 대한 권한만 부여되어야 한다.
- 토큰은 암호화되어 저장되며 민감한 작업을 수행할 때 노출되지 않도록 주의해야 한다.
- 토큰 권한은 유연하게 조정할 수 있으며, 필요 없는 권한은 제거하여 보안을 강화할 수 있다.
- 발급한 토큰에 대한 로깅을 사용하여, 특정 작업에 대한 권한이 부여된 토큰의 사용 내역을 추적할 수 있다
Git 토큰의 권한 종류와 각 권한의 역할은
- Full control of private repositories: 자신의 모든 프라이빗 레포지토리에 대한 완전한 액세스 권한을 부여합니다.
- repo:status: 커밋 상태를 읽고 쓰는 데 필요한 권한을 부여합니다.
- repo_deployment: 배포 상태에 대한 액세스를 부여합니다.
- public_repo: 모든 퍼블릭 레포지토리에 대한 읽기 액세스를 가질 수 있도록 허용합니다.
- repo:invite: 다른 사용자를 레포지토리에 초대하는 데 필요한 권한을 부여합니다.
- security_events: 보안 이벤트에 대한 읽기 및 쓰기 권한을 부여합니다.
- workflow: GitHub Action workflows를 업데이트하는 데 필요한 권한을 부여합니다.
- write:packages: GitHub Package Registry에 패키지를 업로드할 수 있도록 허용합니다.
- read:packages: GitHub Package Registry에서 패키지를 다운로드할 수 있도록 허용합니다.
- delete:packages: GitHub Package Registry에서 패키지를 삭제할 수 있도록 허용합니다.
- admin:org: 조직과 팀의 모든 작업을 수행할 수 있도록 허용합니다.
- write:org: 조직 및 팀 멤버쉽을 읽고 쓰는 데 필요한 권한을 부여합니다.
- read:org: 조직 및 팀 멤버쉽을 읽을 수 있도록 허용합니다.
추가로 권한을 설정할 때는 꼭 필요한 권한을 최소한으로 부여하는 것이 좋습니다. 예를 들어
불필요한 권한이 부여될 경우 보안에 취약해질 수 있습니다.
따라서 권한 설정 시 신중하게 고려해야 합니다.
2. Git 토큰 발급 시 보안 설정
첫째, 토큰이 유출되지 않도록 보안을 유지해야 합니다. 토큰을 공유하거나 코드나 메일 등에 포함시키면 토큰이 노출될 수 있으므로, 보안이 필요한 정보는 Git 토큰으로 보내지 않는 것이 좋습니다.
둘째, 보안성을 높이기 위해, 토큰을 발급하는 것 외에도, 두 단계 인증(2FA) 기능을 사용하거나 IP 주소 범위 제한 등 다른 추가적인 보안 기능을 활용하는 것이 좋습니다.
셋째, 토큰 만료 기간을 설정하여 보안성을 높이는 것이 좋습니다. 만약 토큰이 더 이상 필요하지 않을 경우, 권한을 바로 제거하고 토큰을 폐기하는 것이 좋습니다. (저번 포스팅에 30일로 설정하고 토큰을 생성하였음)
3. 추가적인 보안 2FA기능과 ip범위 제한
2FA 기능이란, "Two-factor authentication"의 약자로, 사용자의 계정에 로그인하거나 중요한 작업을 수행할 때, 비밀번호와 함께 다른 인증 요소를 요구하는 보안 메커니즘입니다. 대표적으로는 휴대전화나 보안 토큰을 이용한 인증 방식이 있습니다.
IP 주소 범위 제한은, 허용된 IP 주소 범위 내에서만 API나 웹 애플리케이션에 접근할 수 있도록 제한하는 보안 기능입니다. 이를 통해 외부에서의 악성 접근을 방지할 수 있습니다. 예를 들어, 개발자가 회사 내부에서만 작업하도록 설정하고자 할 때, 허용된 IP 주소 범위를 설정하여 외부에서는 해당 API나 애플리케이션에 접근할 수 없도록 제한할 수 있습니다.
오늘은 깃권한에 대해 알아봤습니다. 솔직히 영어를 번역한 내용이라 크게 다룰건 없네요 오늘 하루도 공부했다는 마음가짐으로 포스팅 마치도록 하겠습니다.
다음 포스팅은 commit 과 푸시하는법에대해 다루도록 하겠습니다.