Rust 프로젝트의 다중 요소 인증
Rust 인프라 팀은 다양한 시스템에 대한 접근을 보호하기 위해 다중 요소 인증을 채택하며, 특히 중요 Rust 인프라로 간주되는 서비스에 대해서는 더 엄격한 규칙을 적용합니다.
다중 인증과 보증 수준
Rust 인프라 팀은 NIST의 Authentication Assurance Levels를 사용하여 다양한 MFA 방법이 제공하는 보안 수준에 따라 점수를 매깁니다. 따라서 다음을 안전하고 승인된 MFA 방식으로 간주합니다(선호 순서대로):
- FIDO2/Webauthn과 호환되는 하드웨어 보안 키(예: YubiKey)는 AAL-3
- Webauthn 패스키가 활성화된 하드웨어(예: Apple TouchId)는 AAL-2
- TOTP 앱(예: Google Authenticator)은 AAL-2
MFA와 중요 인프라 접근
일반적인 원칙으로, 중요 인프라로 간주되는 서비스가 여러 MFA 방식을 지원하는 경우, 권한 있는(privileged) 또는 관리자(administrator) 접근 권한을 가진 프로젝트 구성원은 서비스 제공자가 지원하는 가장 안전한 MFA 방식을 반드시 사용해야 합니다. 이는 가능한 한 하드웨어 보안 키를 사용해야 하며, 하드웨어 키를 사용할 수 없는 경우에는 패스키 또는 TOTP 앱을 사용해야 함을 의미합니다.
이러한 서비스에는 다음이 포함됩니다:
- Google Workspace 및 GCP(
rust-lang.org) - AWS(AWS SSO 세션을 통해)
- Azure
- Github
- Datadog
- Fastly
- Heroku
- 1password
Rust 인프라 팀은 Yubico YubiKeys Series-5를 AAL-3 테스트를 거쳐 승인된 장치로 공식 지원합니다. 프로젝트 구성원은 원할 경우 다른 제조사의 하드웨어 키를 사용할 수 있지만, Rust 인프라 팀은 버그나 호환성 문제에 대한 지원을 제공할 수 없습니다.
이에 더해, 서비스가 여러 안전한 MFA 방식 및 장치를 지원하는 경우, 프로젝트 구성원은 추가 MFA 장치나 방식이 동일한 AAL에 속하는 한, 이중화를 위해 최소 하나의 추가 MFA 방식을 설정해야 합니다. 예를 들어 heroku 계정에 MFA를 설정할 때, 이중화 목적으로 추가 YubiKey(AAL-3)를 설정할 수 있지만, 같은 목적으로 1password를 TOTP(AAL-2)로 설정해서는 안 됩니다. 이는 특히 관리자 작업 중 공격 벡터에 노출될 수 있는 방식으로 TOTP 백업이 설정된 경우, 보안을 오히려 저하시킬 수 있기 때문입니다.
마지막으로, 중요 인프라에 대한 접근 권한을 가진 프로젝트 구성원이 MFA에 사용하던 하드웨어 장치에 대한 접근을 상실한 경우(예: 노트북 도난 또는 YubiKey 분실), 이는 Rust 인프라 팀에 반드시 알려야 하며, 해당 장치는 허용된 MFA 장치/방법으로 설정되어 있던 모든 시스템에서 즉시 철회되어야 합니다.
Yubico 하드웨어 키 지원
Yubico Secure it Forward Program의 일환으로, Rust 재단은 중요 인프라에 접근 권한이 있는 Rust 프로젝트 구성원에게 YubiKey를 제공할 예정입니다. 이러한 지원 대상 자격이 있으며 권장 YubiKey를 무료로 받고 싶다면, T-infra team in Zulip으로 문의하십시오.
다음 팀의 구성원은 이 지원을 받을 자격이 있습니다:
infracrates.iodocs.rsreleasetriagebotbors