GlideImpersonate - 전역
GlideImpersonate API를 사용하면 관리자가 테스트 목적으로 다른 인증된 사용자로 가장할 수 있습니다.
애플리케이션 내에서 기능을 테스트하기 위해 다른 사용자 역할을 해야 하는 경우 이 API를 사용합니다. 다른 사용자를 가장할 때 관리자는 동일한 메뉴와 모듈을 포함해 가장한 사용자가 시스템에서 액세스할 수 있는 정확한 항목에 액세스할 수 있습니다.
주:
시스템은 관리자가 다른 사용자를 가장하는 동안 수행하는 모든 작업을 해당 사용자가 수행한 것으로 기록합니다.
GlideImpersonate - canDebug(문자열 userSysId)
지정된 사용자가 스크립트에 대한 디버깅을 수행할 수 있는지 확인합니다.
사용자가 스크립트를 디버그할 수 있으려면 개발자 인스턴스에 있어야 합니다. 프로덕션 인스턴스에서는 디버깅이 허용되지 않습니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| userSysId | 문자열 | 디버깅 기능을 확인할 사용자의 sys_Id입니다. |
| 유형 | 설명 |
|---|---|
| 부울 | True: 사용자가 애플리케이션을 디버그할 수 있습니다. False: 사용자가 애플리케이션을 디버그할 수 없습니다. |
userDebug: function(userId) {
var impUser = new GlideImpersonate();
impUser.canDebug(userId);
}
GlideImpersonate - canImpersonate(String userSysId)
현재 사용자가 지정된 사용자를 가장할 수 있는지 확인합니다.
현재 사용자에게 관리자 역할이 할당되지 않았거나, 가장할 사용자가 비활성 상태이거나, 지정된 사용자를 가장하는 데 다른 문제가 있는 경우 메서드가 "false"를 반환하고 사용자를 가장할 수 없습니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| userSysId | 문자열 | 가장할 사용자의 sys_Id |
| 유형 | 설명 |
|---|---|
| 부울 | 현재 사용자가 지정된 사용자를 가장할 수 있는지 여부를 나타내는 플래그입니다. 가능한 값:
|
function onlineImpersonate(userSysId) {
if (!GlideImpersonate().canImpersonate(userSysId)){
gs.addInfoMessage("No access to impersonate " + userSysId);
} else {
GlideImpersonate().impersonate(userSysId);
}
return;
}
GlideImpersonate - impersonate(String userSysId)
현재 관리자의 사용자 ID를 전달된 사용자 ID로 설정하여 관리자가 해당 사용자 역할을 할 수 있도록 합니다.
다른 사용자를 가장할 때 관리자는 동일한 메뉴와 모듈을 포함해 가장한 사용자가 시스템에서 액세스할 수 있는 정확한 항목에 액세스할 수 있습니다. 애플리케이션에서 기능을 테스트할 때만 이 메서드를 사용하십시오. 사용자 가장이 완료되면 가장을 중지할 sys_Id 관리자 와 함께 메서드를 다시 호출해야 합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| userSysId | 문자열 | 가장할 사용자의 Sys_id입니다. |
| 유형 | 설명 |
|---|---|
| 문자열 | 가장 요청 전에 로그인한 사용자의 Sys_id입니다. |
다음 예제에서는 현재 사용자 개체를 가져오는 방법을 보여 줍니다.
var user = gs.getUserDisplayName();
gs.print ("The current user display name is: " + user);
var impUser = new GlideImpersonate();
impUser.impersonate("62826bf03710200044e0bfc8bcbe5df1");
var user = gs.getUserDisplayName();
gs.print ("The impersonated user display name is: " + user);
출력:
The current user display name is: System Administrator
The impersonated user display name is: Abel TuterGlideImpersonate - isImpersonating()
현재 사용자가 다른 사용자를 가장하고 있는지 여부를 확인합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 부울 | True: 사용자가 현재 다른 사용자를 가장하고 있습니다. False: 사용자가 현재 다른 사용자를 가장하고 있지 않습니다. |
function abortOnImpersonate() {
if (GlideImpersonate().isImpersonating()){
current.setAbortAction(true);
gs.addInfoMessage("Transaction canceled due to Impersonation");
}
return;
}