2017-05-18 5 views
0

나는 BaseX에 간단한 XSLT 변환을 수행하려고 : 관리자로 스크립트를 실행하는 경우간단한 변형에 대해 "만들기"권한이 필요한 이유는 무엇입니까?

xquery version "3.0"; 
declare namespace xslt="http://basex.org/modules/xslt"; 

xslt:transform-text(<root></root>, 
    <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
    <xsl:output method="xml" /> 
    <xsl:template match="/">123</xsl:template> 
    </xsl:stylesheet> 
) 

이, 작동합니다. 난 단지 "읽기"권한있는 사용자와이 스크립트를 실행할 때

는하지만, 오류

Stopped at ., 4/20: 
[bxerr:BASX0001] create permission required. 

이유는 무엇입니까 얻을? 데이터베이스에 아무것도 저장하고 싶지 않습니다.

답변

1

XSLT 변환은 매우 강력 할 수 있습니다. 예 : fn : doc을 통해 새로운 자원을 요청하거나 독점적 인 확장 기능을 사용하면 더 많은 일을 할 수 있습니다. 이것이이 기능이 작성 권한이있는 사용자로 제한된 이유입니다. ADMIN 사용자로 제한하면 더 일관성이 있습니다.

+0

나는 본다. 공용 REST API는 읽기 전용입니다. 글로벌 사용 권한을 변경하지 않고 사용자가이 API를 통해 간단하고 위험한 변환을 즉석에서 얻을 수 있다는 것을 알 수 있습니까? – Seb3736

+0

아마 내가 REST API 관리자 권한을 사용자에게 줄 수 있지만 GET 요청을 제외한 모든 것을 Jetty에서 차단할 수 있습니다. – Seb3736

+1

그건 옵션이 될 것입니다. 다른 하나는 기본적으로 ADMIN 권한이있는 RESTXQ에 코드를 작성하고 XQuery에서 필요한 모든 특정 작업을 수행하는 것입니다. –