로그인 및 계정

누가 계정을 만들 수 있는지, 그리고 사람들이 어떻게 로그인하는지 결정합니다. Antimatter의 모든 로그인 방법은 라이선스 없이 사용 가능하며, 단일 로그인과 디렉터리도 포함됩니다.

누가 계정을 만들 수 있는지

설치 직후 시스템 콘솔 › 인증 › 가입을 확인하세요. 기본 설정에서는 커뮤니티 초대 링크가 있는 누구나 계정을 만들 수 있지만, 초대 링크가 없으면 가입할 수 없습니다.

설정키기본값기능
계정 생성 활성화TeamSettings.EnableUserCreation켜짐꺼져 있으면 어떤 방법으로든 계정을 만들 수 없으며, 관리자만(시스템 콘솔 또는 amctl user create) 만들 수 있습니다.
공개 서버 활성화TeamSettings.EnableOpenServer꺼짐켜져 있으면 서버에 접근할 수 있는 누구나 초대 없이 이메일 주소로 가입할 수 있습니다. 공개 커뮤니티에서만 사용하세요.
새 시스템 및 팀 멤버를 지정된 이메일 도메인으로 제한TeamSettings.RestrictCreationToDomains빈 값쉼표로 구분된 도메인, 예: example.com, example.org: 이 도메인의 주소만 계정을 만들 수 있습니다.
전자우편 초대 활성화ServiceSettings.EnableEmailInvitations새 서버에서는 꺼져 있습니다멤버가 전자우편으로 사람을 초대할 수 있게 합니다(SMTP 필요). 보류 중인 전자우편 초대를 무효화는 아직 수락되지 않은 초대를 취소합니다. 어쨌든 48시간 후 만료됩니다.

커뮤니티 관리자는 초대 링크와 자체 허용 도메인을 사용하여 커뮤니티에 참여하는 사람을 관리합니다: 커뮤니티 운영 가이드를 참조하세요.

명령줄에서: amctl user create(--system-admin 또는 --guest 추가), amctl user invite, amctl user deactivate, 시스템 관리자로 만들기 위해 amctl roles system-admin <user>, 되돌리기 위해 amctl roles member <user>.

이메일 및 비밀번호

시스템 콘솔 › 인증 › 전자우편에서:

설정키기본값
전자우편으로 계정 만들기EmailSettings.EnableSignUpWithEmail켜져 있습니다. 모든 사람이 단일 로그인을 통해 로그인할 때 꺼두세요.
전자우편 검증EmailSettings.RequireEmailVerification꺼져 있습니다. 이메일이 작동하도록 설정한 후 켜면, 사람들이 로그인하기 전에 주소를 확인해야 합니다.
전자우편으로 로그인하기EmailSettings.EnableSignInWithEmail켜짐
사용자명으로 로그인하기EmailSettings.EnableSignInWithUsername켜짐

시스템 콘솔 › 인증 › 패스워드에서:

설정키기본값
패스워드 최소 길이PasswordSettings.MinimumLength8 (5~72)
비밀번호 요구 사항: 소문자, 대문자, 숫자, 기호PasswordSettings.Lowercase, .Uppercase, .Number, .Symbol모두 꺼져 있습니다
최대 로그인 시도 횟수ServiceSettings.MaximumLoginAttempts10: 이 횟수만큼 실패하면 이메일로 비밀번호를 재설정할 때까지 계정이 잠겨집니다
비밀번호 찾기 링크를 활성화합니다PasswordSettings.EnableForgotLink켜짐

12자 이상의 길이는 문자 규칙보다 보안에 더 효과적입니다. 누군가의 패스워드를 재설정하려면: 시스템 콘솔 › 사용자 관리 › 사용자 또는 amctl user change-password <user> --password <new>를 사용하세요.

다중 인증

멀티팩터 인증(MFA)은 패스워드 외에 인증 앱에서 생성된 코드를 추가합니다. 전자우편 또는 AD/LDAP로 로그인하는 계정에 적용되며, 단일 로그인(SSO)을 사용하는 경우에는 ID 제공업체의 MFA를 사용해야 합니다. 시스템 콘솔 › 인증 › MFA에서:

  • 멀티팩터 인증 (ServiceSettings.EnableMultifactorAuthentication, 꺼짐): 사용자는 보안 설정에서 MFA를 켤 수 있습니다.
  • 멀티팩터 인증 (ServiceSettings.EnforceMultifactorAuthentication, 꺼짐): 모든 사용자가 가입 시 또는 다음 로그인 시 설정해야 합니다.

누군가가 기기를 분실했다면: amctl user resetmfa <user>를 실행하거나, 시스템 콘솔 › 사용자 관리 › 사용자의 해당 사용자 페이지에서 재설정하세요.

단일 로그인

Antimatter는 인증 제공자를 통해 사용자를 로그인시킬 수 있습니다. 첫 로그인 시 계정 생성이 허용된 경우, 제공자가 전송한 이름, 이메일 및 사용자 이름을 기반으로 계정을 생성합니다.

OpenID Connect, GitLab, Google 및 Entra ID

시스템 콘솔 › 인증 › OpenID 연결으로 이동하여 서비스 제공업체를 선택합니다에서 GitLab, Google Apps, Entra ID(Office 365) 또는 기타 제공업체(Keycloak, Authentik, Zitadel, Okta, Auth0 등)의 경우 OpenID Connect(기타)를 선택하세요.

  1. 인증 제공자에서 웹 유형 애플리케이션("클라이언트")을 생성하고, 사이트 URL에 대한 리다이렉트 URI를 설정하세요:
    제공자리다이렉트 URI
    OpenID Connect (기타)https://chat.example.com/signup/openid/complete
    GitLabhttps://chat.example.com/signup/gitlab/complete
    Googlehttps://chat.example.com/signup/google/complete
    Entra IDhttps://chat.example.com/signup/office365/complete
  2. Antimatter에서 Discovery 엔드포인트(제공업체의 /.well-known/openid-configuration URL; GitLab의 경우 대신 GitLab 사이트 URL), 클라이언트 ID 및 클라이언트 Secret을 입력하세요. 기타 제공업체의 경우 로그인 버튼의 버튼 이름과 버튼 색상도 입력해야 합니다.
  3. 선호 사용자 이름 사용(GitLab 및 기타 제공자)은 Antimatter 사용자 이름을 제공자의 preferred_username 클레임에서 가져옵니다.
  4. 저장한 후 로그아웃하고 로그인 페이지의 새 버튼을 테스트하세요.

설정은 OpenIdSettings, GitLabSettings, GoogleSettings 또는 Office365Settings에 저장됩니다(예: AM_OPENIDSETTINGS_ENABLE, AM_OPENIDSETTINGS_DISCOVERYENDPOINT, AM_OPENIDSETTINGS_ID, AM_OPENIDSETTINGS_SECRET). 이전 OAuth 2.0 페이지는 여전히 OAuth 2.0 GitLab, Google 또는 Entra ID 구성이 남아 있는 서버에서만 표시됩니다.

SAML 2.0

관리자 도구 › 인증 › SAML 2.0에서 SAML 2.0으로 로그인(SamlSettings.Enable)을 활성화하고, 신원 공급자가 제공하는 신원 공급자 메타데이터 URL 또는 SAML SSO URL, 자격 증명 발급자 URL, 신원 공급자 공개 인증서를 입력합니다. 신원 공급자 측에서는 다음을 설정합니다.

  • 서비스 프로바이더 로그인 URL(어설션 컨슈머 서비스): https://chat.example.com/login/sso/saml;
  • 가져오기를 지원하는 프로바이더를 위한 Antimatter 메타데이터: https://chat.example.com/api/v4/saml/metadata.

신원 공급자가 전송하는 속성을 매핑합니다. 최소한 전자우편 속성과 사용자명 속성이 필요하며, ID, 이름, 성, 닉네임, 직책, 언어, 게스트, 관리자 속성은 선택적으로 설정할 수 있습니다. 시그니처 검증과 암호화는 기본적으로 활성화되어 있습니다(암호화는 서비스 공급자 키와 인증서가 필요하며, RSA 키만 지원됩니다). 서명 요청는 비활성화되어 있습니다. 시그니처 알고리즘의 기본값은 RSAwithSHA256입니다.

AD/LDAP

관리자 도구 › 인증 › AD/LDAP의 단계별 페이지를 통해 Antimatter를 Active Directory 또는 기타 LDAP 서버에 연결합니다. 서버와 포트(LdapSettings.LdapServer, LdapSettings.LdapPort, 기본값 389), 연결 보안(없음, TLS 또는 STARTTLS), 기본 DN과 바인딩 계정(BaseDN, BindUsername, BindPassword), 사용자, 게스트, 관리자, 그룹을 위한 필터, 그리고 전자우편, 사용자명, ID, 이름, 사진 속성을 설정합니다. 이후 사용자는 디렉터리 로그인으로 접속할 수 있습니다.

동기화 작업은 60분마다(LdapSettings.SyncIntervalMinutes) 실행되어 이름을 업데이트하고 디렉터리에서 제거된 사용자를 비활성화합니다. amctl ldap sync를 실행하여 즉시 동기화할 수 있습니다. LDAP 그룹은 관리자 도구 › 사용자 관리 › 그룹에서 커뮤니티와 채널에 연결할 수 있습니다. SAML 계정도 AD/LDAP와 동기화할 수 있습니다(AD/LDAP과 SAML 계정 동기화).

기존 계정 이동

기존의 전자우편 계정을 단일 로그인으로 전환하려면 amctl user migrate-auth email saml users.json(또는 ldap)을 사용하여 일괄 이동할 수 있습니다. 인증 전송 허용(ServiceSettings.ExperimentalEnableAuthenticationTransfer, 관리자 도구 › 실험용 › 기능들에 위치)이 활성화된 경우, 사용자는 보안 설정에서 자신의 로그인 방식을 직접 변경할 수도 있습니다.

게스트 계정

게스트는 조직 외부에서 초대받은 채널만 볼 수 있는 사용자입니다. 관리자 도구 › 인증 › 게스트 접근(Beta)에서 활성화합니다:

설정키기본값
게스트 접근 활성화GuestAccountsSettings.Enable꺼짐
허용된 게스트 도메인GuestAccountsSettings.RestrictCreationToDomains비어 있음: 게스트는 임의의 이메일 도메인을 사용할 수 있습니다
멀티팩터 인증GuestAccountsSettings.EnforceMultifactorAuthentication꺼짐; 모든 사용자에게 MFA가 활성화되고 강제되는 경우에만 사용 가능
게스트 태그 숨기기GuestAccountsSettings.HideTags꺼짐: 이름 옆에 "게스트" 태그가 표시됩니다

활성화되면 커뮤니티 관리자가 게스트를 특정 채널에 초대합니다. 관리자는 amctl user demote로 멤버를 게스트로, amctl user promote로 게스트를 멤버로 전환할 수 있습니다.

세션

사용자가 로그인 상태로 유지되는 시간은 관리자 도구 › 환경 › 세션길이에서 설정합니다:

설정키새 서버 기본값
활동으로 세션 길이를 연장하세요ServiceSettings.ExtendSessionLengthWithActivity켜짐: 사용자가 Antimatter를 사용하는 동안 세션이 갱신됩니다
세션 길이 AD/LDAP 및 이메일(시간)ServiceSettings.SessionLengthWebInHours720시간(30일)
모바일 세션 길이(시간)ServiceSettings.SessionLengthMobileInHours720시간
세션 길이 SSO(시간)ServiceSettings.SessionLengthSSOInHours720시간
세션 유휴 초과시간(분)ServiceSettings.SessionIdleTimeoutInMinutes43200분(30일); 활동으로 세션이 연장되지 않을 때만 표시됩니다
비밀번호 변경 시 세션 종료ServiceSettings.TerminateSessionsOnPasswordChange켜짐

모든 사용자를 한꺼번에 로그아웃하려면 관리자 도구 › 사용자 관리 › 사용자에서 모든 세션 취소를 사용하세요. 특정 사용자 한 명만 로그아웃하려면 해당 사용자의 페이지를 열면 됩니다.