스크립트 샌드박스 속성 구성

  • 릴리스 버전: Xanadu
  • 업데이트 날짜 2024년 08월 01일
  • 읽기5분
  • 스크립트 샌드박스 속성(glide.script.use.sandbox)을 활성화하여 권한이 제한된 샌드박스 내에서 클라이언트 생성 스크립트를 실행합니다.

    시스템 내에는 클라이언트가 평가를 위해 서버에 스크립트를 보낼 수 있는 두 가지 경우가 있습니다.
    • 필터 및/또는 쿼리: assigned_to=javascript:getMyGroups()와 같은 필터를 서버로 보내는 것은 합법적입니다.
    • 시스템 API: API 호출 AJAXEvaluate 를 사용하면 클라이언트가 서버에서 임의의 스크립트를 실행하고 응답을 받을 수 있습니다.
    스크립트 샌드박스 속성()glide.script.use.sandbox을 활성화하면 이러한 두 진입점 중 하나를 통해 평가되는 스크립트는 다음과 같은 특성을 가진 축소된 권한 샌드박스 내에서 실행됩니다.
    • 클라이언트 호출 가능으로 표시된 비즈니스 규칙만 샌드박스 내에서 사용할 수 있습니다.
    • 클라이언트 호출 가능으로 표시된 스크립트 포함만 샌드박스 내에서 사용할 수 있습니다.
    • 특정 API 호출(주로 직접 DB 액세스를 처리하는 호출에 국한되지 않음)은 허용되지 않습니다.
    • 샌드박스 내에서 데이터를 삽입, 업데이트 또는 삭제할 수 없습니다. 예를 들어, current.update()에 대한 모든 호출은 무시됩니다.
    주:
    이 속성에 대한 자세한 내용은 인스턴스 보안 강화 설정을 참조하십시오 클라이언트 작성 스크립트 샌드박스 .
    스크립트 샌드박스가 활성화된 경우 클라이언트 생성 스크립트에서 이러한 메서드는 허용되지 않습니다.
    표 1. 제한된 메서드
    클래스 방법
    GlideRecord
    • deleteMultiple()을 호출합니다.
    • deleteRecord()를 호출합니다.
    • getRowCount()를 호출합니다.
    • 삽입()
    • 업데이트()
    • updateMultiple()을 호출합니다.
    글라이드시스템(gs)
    • addErrorMessage()를 호출합니다.
    • addInfoMessage()를 호출합니다.
    • addMessage()를 호출합니다.
    • 이벤트 큐()
    • flushMessages()를 사용합니다.
    • getEscapedProperty()를 호출합니다.
    • getProperty()를 호출합니다.
    • 로그()
    • 로그 오류()
    • 로그경고()
    • setProperty()를 호출합니다.
    • setRedirect()를 호출합니다.
    • setReturn()을 호출합니다.
    • 워크플로우플러시()
    범위 지정 GlideRecord
    • deleteMultiple()을 호출합니다.
    • deleteRecord()를 호출합니다.
    • 삽입()
    • 업데이트()
    • updateMultiple()을 호출합니다.
    ScopedGlideSystem(gs)
    • addErrorMessage()를 호출합니다.
    • addInfoMessage()를 호출합니다.
    • 디버그()
    • 이벤트 큐()
    • executeNow()를 호출합니다.
    • getProperty()를 호출합니다.
    • getSessionToken()을 호출합니다.
    • 정보()
    • setRedirect()를 호출합니다.
    GlideDate

    GlideDateTime

    글라이드 타임

    • 추가()
    • addDays()를 호출합니다.
    • addDaysLocalTime()을 호출합니다.
    • addDaysUTC()를 호출합니다.
    • addMonthsLocalTime()을 호출합니다.
    • addMonths()를 호출합니다.
    • addSeconds()를 호출합니다.
    • addWeeks()를 호출합니다.
    • addYears()를 호출합니다.
    • compareTo()를 호출합니다.
    • getByFormat()을 호출합니다.
    • getDate()를 호출합니다.
    • getDayOfWeek()를 호출합니다.
    • getDayOfWeekUTC
    • getDayOfWeekLocalTime()을 호출합니다.
    • getDayOfMonth()를 호출합니다.
    • getDayOfMonthLocalTime()을 호출합니다.
    • getDayOfMonthNoTZ()를 호출합니다.
    • getDayOfWeek()를 호출합니다.
    • getDayOfWeekLocalTime()을 호출합니다.
    • getDayOfWeekUTC()를 호출합니다.
    • getHourOfDayLocalTime()을 호출합니다.
    • getHourOfDayUTC()를 호출합니다.
    • getDaysInMonth()를 호출합니다.
    • getDaysInMonthUTC()를 호출합니다.
    • getDaysInMonthLocalTime()을 호출합니다.
    • getDisplayValueInternal()을 호출합니다.
    • getDisplayValue()를 호출합니다.
    • getHourLocalTime()을 호출합니다.
    • getLocalDate()를 호출합니다.
    • getLocalTime()을 호출합니다.
    • getMinutesLocalTime()을 호출합니다.
    • getMinutesUTC()를 호출합니다.
    • getMonthLocalTime()을 호출합니다.
    • getMonthNoTZ()를 호출합니다.
    • getMonthUTC()를 호출합니다.
    • getNumericValue()를 호출합니다.
    • getSeconds()를 호출합니다.
    • getTime()을 호출합니다.
    • getTZOffset()을 호출합니다.
    • getValue()를 호출합니다.
    • getYear()를 호출합니다.
    • getUserTimeZone()을 호출합니다.
    • getWeekOfYearLocalTime()을 호출합니다.
    • getWeekOfYearUTC()를 호출합니다.
    • getYearUTC()를 호출합니다.
    • getYearLocalTime()을 호출합니다.
    • isDST()를 호출합니다.
    • onOrAfter()를 호출합니다.
    • onOrBefore()를 호출합니다.
    • setDayOfMonthUTC()를 호출합니다.
    • setDisplayValue()를 호출합니다.
    • setMonth()를 호출합니다.
    • setNumericValue()
    • setTZ()를 호출합니다.
    • set값()
    • setValueUTC()를 호출합니다.
    • 빼기()
    • toString()을 호출합니다.
    Glide일정
    • 추가()
    • isInSchedule()을 호출합니다.
    • 로드()
    • when다음()
    주:
    시스템 속성을 false로 설정하여 스크립트 샌드박싱을 통해 GlideSystem(gs) 메서드 log(), logError()logWarning()glide.security.sandbox_no_logging 활성화할 수 있습니다.

    스크립트 샌드박스를 활성화하지 않고 시스템을 실행하면 이러한 제한 사항이 적용되지 않습니다.

    주:
    이 속성은 높은 보안 설정 플러그인을 활성화할 때 기본적으로 활성화됩니다. 플러그인 외부에서 이 속성을 활성화하지 마십시오.
    속성 기본값
    축소된 권한 "샌드박스" 내에서 클라이언트가 생성한 스크립트(AJAXEvaluate 및 쿼리 조건)를 실행합니다.

    활성화되면 클라이언트 호출 가능 확인란이 예로 설정된 해당 비즈니스 규칙 및 스크립트 포함만 사용할 수 있고 일부 백엔드 API 호출은 허용되지 않습니다.

    활성화되었습니다(샌드박스 사용 중).