조직 세션 및 MFA 정책
keenauth_session_policy와 keenauth_mfa_policy 리소스는 조직 고유의 세션 수명과 다단계 인증 규칙을 설정합니다. 조직 정책은 환경 설정(keenauth_environment_settings)보다 엄격하게만 설정할 수 있습니다. 더 느슨한 값은 422 policy_weaker_than_parent로 실패합니다.
resource "keenauth_session_policy" "acme" {
organization_id = keenauth_organization.acme.id
idle_minutes = 60
absolute_minutes = 720
refresh_idle_days = 7
}
resource "keenauth_mfa_policy" "acme" {
organization_id = keenauth_organization.acme.id
required_for = "admins"
allowed_factors = ["webauthn", "totp"]
enrollment_grace_days = 7
}
세션 정책
| 속성 | 범위 | 설명 |
|---|---|---|
idle_minutes |
5–144000 | 세션 유휴 시간 제한. absolute_minutes 이하여야 합니다. |
absolute_minutes |
60–525600 | 세션의 절대 수명. |
refresh_idle_days |
1–365 | 새로 고침 토큰의 유휴 수명. refresh_absolute_days 이하여야 합니다. |
refresh_absolute_days |
1–365 | 새로 고침 토큰의 절대 수명. |
- 속성을 하나 이상 설정하세요. 생략한 속성은 환경에서 상속됩니다.
- 수명을 줄이면 기존 세션의 조직 컨텍스트가 종료됩니다.
- 세션 정책에는 Enterprise 플랜이 필요합니다(
403 plan_feature_unavailable). 개발 환경에서는 사용할 수 있습니다.
MFA 정책
| 속성 | 값 | 설명 |
|---|---|---|
required_for |
none, admins, all |
두 번째 인증 요소를 사용해야 하는 대상. admins는 조직 관리자 역할과 idp_ 시스템 권한을 가진 구성원을 포함합니다. |
allowed_factors |
totp, webauthn, sms, email |
구성원이 사용할 수 있는 두 번째 인증 요소. 하나 이상이어야 하며, 각각 환경에서 활성화되어 있어야 합니다. |
enrollment_grace_days |
0–30 | 필수 요소를 등록하기 전에 구성원이 로그인할 수 있는 일수. 기본값은 0입니다. |
수명 주기
- 조직은 종류별로 정책을 하나씩 가집니다. 리소스 ID는 조직 ID입니다.
- 모든 쓰기 작업은 전체 정책을 보냅니다. 생성은 기존 정책을 덮어쓰지 않습니다. 조직에 이미 정책이 있으면(대시보드 또는 관리자 포털에서 설정된 경우) API가
428로 응답하며, 대신 가져와야 합니다. - 수정과 삭제는
If-Match를 보냅니다. 프로바이더 밖에서 변경된 정책은 다음plan에서 드리프트로 표시되며, 프로바이더 밖에서 삭제된 정책은 다시 생성됩니다. - 리소스를 제거하면 정책이 삭제되고, 조직은 다시 환경 설정을 상속합니다.
가져오기
조직 ID로 가져오세요:
tofu import keenauth_session_policy.acme org_01j9zq3v8c5m2x7k4t6r1n0b3d
tofu import keenauth_mfa_policy.acme org_01j9zq3v8c5m2x7k4t6r1n0b3d