# 解释器的模拟用户 原文链接 : [http://zeppelin.apache.org/docs/0.7.2/manual/userimpersonation.html](http://zeppelin.apache.org/docs/0.7.2/manual/userimpersonation.html) 译文链接 : [http://www.apache.wiki/pages/viewpage.action?pageId=10030749](http://www.apache.wiki/pages/viewpage.action?pageId=10030749) 贡献者 : [片刻](/display/~jiangzhonglian) [ApacheCN](/display/~apachecn) [Apache中文网](/display/~apachechina) ## 运行zeppelin解释器进程作为Web前端用户 * 在shiro.ini中启用shiro auth ``` [users] user1 = password1, role1 user2 = password2, role2  ``` * 为要模拟的用户启用无密码ssh(例如user1)。 ``` adduser user1 #ssh-keygen (optional if you don't already have generated ssh-key. ssh user1@localhost mkdir -p .ssh cat ~/.ssh/id_rsa.pub | ssh user1@localhost 'cat >> .ssh/authorized_keys'  ``` * 或者替代无密码,用户可以在zeppelin-env.sh 中覆盖ZEPPELIN _IMPERSONATE_ CMD ``` export ZEPPELIN_IMPERSONATE_CMD='sudo -H -u ${ZEPPELIN_IMPERSONATE_USER} bash -c '  ``` * 启动zeppelin服务器。 * * * **截图 **![](img/6feaae3313a0aa359c9644b7faabb3ee.jpg) * * * * 转到解释器设置页面,并在任何解释器(在我的例子中为其解释器)启用“用户模拟” * 测试用一个简单的段落 ``` %sh whoami ``` 请注意,`--proxy-user`默认情况下,“用户Impersonate”选项的使用将使Spark解释器能够使用当前用户的选项。如果要禁用`--proxy-user`选项,请参考`ZEPPELIN_IMPERSONATE_SPARK_PROXY_USER`变量in`conf/zeppelin-env.sh`