# Secure Token Errors
우선 해당 방법은 secure token error가 발생했을 때 토큰 초기화와 계정 문제를 해결하기 위한 방법이다. 한마디로 비밀번호를 잘못 입력하여 계정이 잠기거나 이 외의 사용자의 실수로 인하여 계정 문제가 발생한 경우와는 달리 시스템적으로 문제가 생겼을 때 사용할 수 있는 방법이다. 이 점을 왜 강조하냐면 사실 계정 잠김은 애플 사이트를 통해서 해당 계정을 인증받고 다시 풀면 되는 간단한 작업이기에 아래 포스트에 나와 있는 방법을 사용할 필요가 없기 때문이다.
우선 문제가 발생할 수 있는 조건은 관리자가 별도로 존재하는 회사나 특정 기관에서 이중으로 잠김 설정이 되어있는 맥 또는 맥북이면서 Mac OS 10.13 이상의 최신 버전인 경우에 갑자기 잠김 현상이 발생할 수 있다. 아래의 Figure 1처럼 맥북을 통해서 하나의 계정과 두 개의 다른 비밀번호를 통해서 로그인을 해왔을 때 첫 번째 비밀번호가 갑자기 잠기는 신기한 경험을 하고 있다면 아래의 방법을 통해서 문제를 해결할 수 있다. 이때 필요한 건 IT 부서에 연락하거나 관련 부서에 연락해서 어드민, 즉 관리자 계정을 받아서 우선 로그인을 할 수 있어야 한다.
추가적으로 당장 해당 컴퓨터의 접속해서 파일을 백업해야하거나 파일을 사용해야 한다면 우선 어드민 계정으로 로그인을 하고 다시 Logout and Login 메뉴를 통해서 본인 계정과 2차 비밀번호를 통해서 기존 로컬 환경에 접근이 가능하다. 원리는 간단한데, 어드민 계정으로 로그인을 하게 되면 1차 부팅과 검증 과정이 이미 이뤄졌기 때문에 2차 부팅 상태로 간다고 쉽게 생각하면 된다. 따라서 이때 2차 비밀번호와 개인 계정을 입력하면 임시로 사용자 로컬 환경에 접근이 가능하다. 다만 매번 이럴 수는 없으니 아래의 방법을 통해서 해결이 가능하다.
# Fix Filevault Errors
내 경우에는 아침에 오전 미팅과 업무를 하려고 하는데 갑자기 1차 로그인이 되지 않는 문제가 생겼었다. 순간 해킹을 의심하기도 했지만 돌이켜본 내 생각으로는 블록체인 연구를 하다가 건드리지 말아야할 sensitive한걸 건드려서 Filevault에서 Token이 denied되는 문제가 발생한 것 같았다. 이와 같이 응용프로그램 외적으로 로컬 접근 권한과 다른 네트워크 연결하는 과정에서 잘못 건드리는 경우 발생할 수 있는 문제이니 개발자 브로들도 참고해서 나처럼 짜증 나는 일을 겪지 않길 바란다. 짜증 나 죽겠는데 stackoverflow 이런 곳에 마치 전문가인척 "아 그건 해결할 수 없어요."라고 써놓은 글을 보면 더 짜증이 난다.
아무튼 본론으로 돌아와서 어드민 계정이 있다면 해당 계정으로 로그인하고 2차 로그인을 사용자 계정으로 로그인을 해준다. 이때 어드민 계정으로 새로 하나 만들어두는 것도 예방책 중에 하나이다. 맥을 쓰는 입장에서 수긍하고 다음번에 또 발생할 경우를 대비할 수 밖에 없다.
먼저 일단어드민, 즉 관리자 계정을 통해서 토큰에 접근해서 기존 계정의 토큰을 변경할 수 있는지를 확인하려면 관리자 계정의 상태를 살펴보고 진행하는 것이 좋다. 관리자 계정인 줄 알았는데 그게 아니라 일반 계정이면 아래의 진행이 불가능하다.
sudo sysadminctl -secureTokenStatus <adminuser>
위의 코드만 보면 헷갈릴 수 있기 때문에 Figure 1의 예시를 참고해서 코드를 작성해 주면 아래와 같다.
sudo sysadminctl -secureTokenStatus admin_a
Done!이라고 떴으면 마음을 가라앉히고 다음 과정으로 넘어가면 된다.
이후에 관리자 권한으로 된 터미널로 들어가서 아래의 명령어를 통해서 토큰을 재설정해줄 수 있다. 관리자이기 때문에 sudo를 입력하지 않아도 되지만 만약에 경우를 대비해서 입력하는 것도 좋다.
sudo sysadminctl -adminUser <username> -adminPassword <password> -secureTokenOff <username> -password <user-password>
요렇게만 나와 있으면 헷갈리기 때문에 Figure 1에 있는 예제를 적용해보겠다.
sudo sysadminctl -adminUser admin_a -adminPassword admin_password -secureTokenOff account_a -password accout_password_b
마찬가지로 Done!이라고 떴으면 이제 Tokenon을 통해서 계정 비밀번호 설정을 다시 해준다.
sudo sysadminctl -secureTokenOn <username> -password <password> -adminUser <adminUsername> -adminPassword <password>
아래는 Figure 1 예시에 나와있는 계정과 비밀번호를 입력한 경우이다.
sudo sysadminctl -secureTokenOn account_a -password account_a_password -adminUser admin_a -adminPassword admin_a_password
이렇게 입력하고 나면 문제없이 로그인이 되는 걸 확인할 수 있다.
# 유의사항
위의 방법을 통해서 문제가 해결되지 않을 수도 있다. 작성된 방법은 문제가 발생할 수 있는 수만 가지 중에 한 가지 해결책일 뿐이다. 그럼에도 나와 비슷한 문제를 겪고 있다면 같은 에러일 수 있으니 해당 방법을 통해서 Filevault 로그인 에러 문제를 해결할 수 있다.
이번에 GTA 모바일 게임 개발자가 IT 부서로 새로 왔는데 오자마자 맥을 들고 오는 나를 보고 "역시나 그렇군"하는 표정과 함께 문제를 해결하고 나서 "너 뭐 하는 사람인데?"라는 질문의 답을 듣고선 "아니 근데 왜 혼자 못함?"이라는 표정을 짓고선 결국엔 친해진 건 함정.
'Computer Science > Errors' 카테고리의 다른 글
[Errors] nvm: command not found (0) | 2024.09.11 |
---|---|
[Error] git-credential-osxkeychain (2) | 2024.09.05 |
[Error Code] 윈도우 vscode에서 pip install이 되지 않을때 1초만에 해결 방법 (0) | 2024.04.24 |
[Error Code / Docker] ERROR [internal] load metadata for docker.io (0) | 2024.02.26 |
[Error Code/Docker] Cannot connect to the Docker daemon at unix (0) | 2024.02.20 |
댓글