HDFS Ranger REST API是否同步?

ajsxfq5m  于 2022-12-09  发布在  HDFS
关注(0)|答案(1)|浏览(203)

我正在使用importPoliciesFromFile API调用不断地将更改从一个Ranger示例复制到另一个示例。我看到importPoliciesFromFile将删除并使用新的策略ID重新创建策略。这会对授权或Ranger的工作方式造成任何影响吗?我在脑海中想象,由于删除策略,在一瞬间不会有策略,然后客户端将无法获得授权或拒绝访问。或者它是同步的意思,它是否停止所有其他代码执行和用户交互,直到调用返回?

63lcw9qa

63lcw9qa1#

您提到的importPoliciesFromFile方法在一个带有Spring的@Transactional注解的类中;

package org.apache.ranger.rest;

@Path("plugins")
@Component
@Scope("request")
@Transactional(propagation = Propagation.REQUIRES_NEW)
public class ServiceREST {

...

    @POST
    @Path("/policies/importPoliciesFromFile")
    @Consumes({MediaType.MULTIPART_FORM_DATA, MediaType.APPLICATION_JSON})
    @Produces({ "application/json", "application/xml" })
    @PreAuthorize("@rangerPreAuthSecurityHandler.isAdminOrKeyAdminRole()")
    public void importPoliciesFromFile(...) {

    }

}

请参见这里的评论和答案Is spring @transactional thread safe?。看起来Spring在“线程安全”和“脏读”方面依赖于它的底层数据库。

相关问题