[기술적 해법(Technical Insights) | Script 보호(Protect Your Scripts)]
원문 출처: https://www.arbutussoftware.com/en/technical-insights/protect-your-scripts
Script 보호(Protect Your Scripts)
BulletProof
(방탄 - 있을지 모를 문제나 손상에 보호되도록 디자인된)
다른 사용자를 위해 script 를 작성하는 사람은 script 를 "bulletproof(방탄 - 있을지 모를 문제나 손상에 보호되도록 디자인된)"으로 만들려고 최선을 다했음에도 불구하고, 사용자와 script 를 공유한 후에 문제가 발생할 수 있다는 것을 알고 있습니다.
물론, Arbutus 에서는 우리가 script 를 작성하는 명령어(command language)가 감사 업계 표준(audit industry standard)이지만, 다운스트림(downstream) 이슈를 방지하는데 실제로 도움이 될 수 있는 script 의 견고성을 향상시키도록 설계된 많은 기능도 추가했습니다.
재작성이 거의 또는 전혀 필요 없이, 기존 script 를 사용하여 이러한 기능을 추가할 수 있습니다.
대부분의 script 에서 가장 큰 단일 장애 지점(single failure point)은 실수로 Esc 키를 누르는 것입니다.
이것이 Arbutus 가 SET ESC OFF 로 Esc 키를 끌 수 있도록 하는 이유입니다.
Script 가 실행 중일 때 Esc 키를 누르면 무시됩니다.
마찬가지로 중요한 것은,
사용자 입력(user input)을 위한 dialog command(대화 상자 명령)가 있는 경우 'Cancel(취소)' 버튼도 비활성화(disabled)된다는 것입니다.
이러한 방법을 통해 사용자가 Script 를 중단할 수 없게 합니다.

Dialog boxes(대화상자) 얘기가 나와서 말씀 드리자면, script error 의 주요 원인은 사용자가 입력(input)을 잘못해서 입니다.
이것이 다양한 타입의 user input edit boxes(사용자 입력 편집상자)를 지원하도록 Dialog command(대화상자 명령)를 업그레이드한 이유입니다.
완벽하게 검증하기 어려울 수 있는 character(문자) 입력뿐만 아니라 Date(날짜), Numeric(숫자) 및 Filename(파일이름) 타입도 제공합니다.
Number(숫자) 편집은(당연히) number 만 허용하고, date(날짜)에는 user dialog(사용자 대화상자)에 내장된 날짜 선택기가 포함되며(return a date type-날짜 타입을 반환), 파일 이름에는 Windows 파일 브라우저도 포함되어 올바르게 파일을 선택할 가능성(및 용이성)을 향상시킵니다.



Script 자체와 관련하여 일부 다운스트림(downstream) 사용자들은 실행 중인 script 를 보거나 가끔씩 조정하기를 원할 것입니다.
불행히도, 이것은 때때로 의도하지 않은 변경이나 script 에 부정적인 영향을 미치는 다른 문제로 이어질 수 있습니다.
