IQL(Iru Query Language)은 매핑을 위한 Iru의 표현식 언어로, 여러 곳에서 사용됩니다.
- 애플리케이션이 로그인 시 수신하는 속성 및 클레임.
- 연결된 소스가 디렉터리에 매핑하는 필드 (속성 매핑 참조).
- Auto Group 규칙 및 목록 필터.
데이터 참조
참조하는 항목은 표현식이 실행되는 위치에 따라 다릅니다.-
애플리케이션 매핑은
user객체에서 시작하며, 이 객체의 필드는 디렉터리의 프로필 속성입니다.기본값도 이를 반영합니다. OIDC 앱의 subject 기본값은user.id이고, SAML 앱의 Subject 기본값은user.username입니다. -
Directory Sync 매핑은 소스의 필드 이름을 참조합니다. 유효한 IQL 식별자는 연결된
시스템에서 오는 그대로 직접 작성합니다. ASCII 문자 또는 밑줄로 시작하고 나머지는 ASCII
문자, 숫자, 밑줄로 구성됩니다.
다른 이름은 정확한 이름으로
__source에서 읽습니다. 공백, 기호, 단일 필드 이름 안의 점, ASCII 이외의 문자 및 IQL 키워드가 포함됩니다. 예:__source["Email - Work"]. IQL로 값 변환을 참조하세요.
user.profile.team)으로, 목록이나
맵은 [...]로 접근합니다(아래에서 설명).
기본 구성 요소
리터럴
\n, \t, \\, \", \uXXXX와 같은 일반적인 이스케이프를 지원합니다.
연산자
- 산술
- 비교
- 논리
- 멤버십 및 선택
우선순위
가장 강하게 결합하는 것부터 가장 약한 것 순입니다. 확실하지 않으면 괄호를 추가하세요.문자열 함수
문자열 연산은value.method(...) 형식으로 값에 대한 메서드로 작성합니다.
조건문 및 기본값
조건 연산자는 값이 비어 있을 수 있을 때 대체 값을 제공하는 가장 간단한 방법입니다.선택적 값
Optional 도우미를 사용하면 오류를 일으키지 않고 누락될 수 있는 값을 다룰 수 있습니다. optional은 값을 보유하거나 비어 있습니다.- 생성
- 안전하게 접근
- 값 꺼내기
- 변환
ofNonZeroValue는 빈 문자열 "", 0, false, 빈 목록 [], 빈 맵 {}, null을
비어 있는 것으로 처리합니다.주석 및 공백
공백은 의미가 없으며,//는 줄 끝까지 이어지는 주석을 시작합니다.
예제
다음 단계
애플리케이션 매핑
IQL 값을 애플리케이션이 수신하는 어설션 또는 토큰에 매핑합니다.
속성 매핑
동일한 IQL을 사용하여 연결된 소스를 디렉터리에 매핑합니다.
자동 그룹
프로필 속성에 대한 IQL 규칙으로 그룹 멤버십을 구동합니다.
프로필 속성
표현식이 값을 가져오는
user 필드입니다.