언어와 오른쪽에서 왼쪽으로 쓰기
최종 사용자 페이지(호스팅 로그인, 계정 포털, 이메일)는 30개 언어로 제공됩니다. 이 중 3개 언어는 오른쪽에서 왼쪽으로 쓰는 언어입니다: 아랍어(ar), 페르시아어(fa), 히브리어(he). 대시보드와 이 문서는 8개 언어로 제공됩니다: 터키어, 영어, 프랑스어, 독일어, 한국어, 일본어, 이탈리아어, 스페인어.
언어 선택 방식
호스팅 페이지는 다음 소스에서 순서대로 언어를 선택합니다. 각 소스는 페이지가 번역된 언어와 대조합니다. 일치하는 항목이 없으면 다음 소스를 확인합니다:
- OIDC 인가 요청의
ui_locales매개변수(순서가 있는 목록, 처음 10개 항목). - 브라우저의
Accept-Language헤더.
두 소스 모두 일치하지 않으면 영어(en)를 사용합니다. 지역 태그는 기본 언어로 대체됩니다(de-AT는 de로). 이 값은 대조에만 사용되며 페이지에 그대로 복사되지 않습니다.
환경에서 사용 가능한 언어는 OpenID 제공자 메타데이터의 ui_locales_supported와 /fapi/v1/environment 응답의 locales로 공개되므로, 애플리케이션은 해당 언어만 제공할 수 있습니다. 호스팅 페이지는 아직 선택 범위를 이 목록으로 좁히지 않으며, 환경의 기본 언어도 아직 대체 언어로 사용되지 않습니다. 그때까지 대체 언어는 항상 영어입니다.
아직 제공되지 않음(계획 §70): 선택한 언어를 idp_locale 쿠키에 저장하는 언어 선택기와 로그인한 사용자의 locale을 사용하는 기능. 해당 기능이 출시되기 전까지는 요청할 때마다 언어를 다시 선택합니다.
오른쪽에서 왼쪽으로 쓰는 페이지
- 모든 호스팅 페이지와 계정 포털에는
<html lang=… dir=…>가 포함됩니다.ar,fa,he의 경우dir은rtl입니다. 이메일 템플릿도 루트 요소에 같은dir을 포함합니다. - 사용자 지정 CSS는
margin-inline-start,padding-inline-end,border-inline-start와 같은 논리적 방향 속성과text-align: start만 허용합니다.margin-left와 같은 물리적 방향 속성은physical_property로, 값left와right는physical_value로 거부됩니다.position과inset계열을 포함해 요소를 다른 요소 위로 이동시키는 속성은 전혀 허용되지 않습니다. - 일회용 코드와 복구 코드 필드는 항상 왼쪽에서 오른쪽으로 배치됩니다. 식별자 필드는
dir="auto"를 사용하므로 주소는 고유한 방향을 유지합니다. - 동의 화면의 애플리케이션 이름은
<bdi>로 분리되므로, 왼쪽에서 오른쪽으로 쓰는 이름이 오른쪽에서 왼쪽으로 쓰는 문장을 깨뜨리지 않습니다. 조직 선택기의 조직 이름 등 다른 이름은 아직 분리되지 않습니다.
양방향 제어 문자
- 동의 화면에 표시되는 고객 제공 표시 이름(예: 애플리케이션 이름)에서는 제어 문자, 보이지 않는 서식 문자(양방향 제어 문자 U+202A–U+202E 및 U+2066–U+2069 포함), 줄 또는 단락 구분자가 제거되므로, 이름이 주변 텍스트의 순서를 바꾸거나 위조할 수 없습니다.
- 브랜딩의 사용자 지정 텍스트 재정의는 양방향 제어 문자 U+202A–U+202E 및 U+2066–U+2069를 필드 오류 코드
bidi_control_character로 거부하고, 그 밖의 제어 문자는control_character로 거부합니다(422 validation_failed,errors[]항목이 해당 텍스트를 가리킵니다). - 이메일에 삽입되는 텍스트 값(예: 애플리케이션 이름)에 제어 문자나 보이지 않는 서식 문자가 포함되어 있으면 거부됩니다. 페르시아어와 인도계 문자에 필요하므로 제로 폭 결합자와 비결합자(U+200D, U+200C)는 허용됩니다.
코드, 날짜 및 숫자
일회용 코드와 복구 코드는 사용자가 다른 기기에서 입력할 수도 있으므로 모든 언어에서 ASCII 숫자로 표시됩니다. 이메일의 보안 이벤트 시각은 이메일 언어의 CLDR 날짜 및 시간 형식과 수신자의 시간대를 사용합니다(수신자의 시간대를 알 수 없으면 UTC). CLDR 날짜 데이터가 없는 언어에서는 시각을 YYYY-MM-DD HH:MM UTC 형식으로 표시합니다.
기타 문자 체계를 위한 글꼴
허용된 글꼴 목록에는 아랍어, 히브리어, 일본어, 한국어, 중국어 간체, 태국어, 데바나가리 문자용 Noto Sans 계열이 포함됩니다. 중국어 번체 계열은 아직 목록에 없습니다(검증되지 않음). 글꼴과 토큰은 로그인 페이지 브랜딩을 참조하십시오.