我希望能够做到这样的事情:
#!/usr/bin/python
if jira.user_has_permission('jsmith', 'JIRA-123'):
print '%s has permission to view %s' % (user, record)
else:
print '%s does not have permission to view %s' % (user, record)
如何实现jira.user_has_permission()?
注意:我正在寻找能够确定访问API的用户以外的用户是否有权查看给定记录。
编辑: 我还打开了一个解决方案,告诉我用户是否有权查看给定项目内的记录。我尝试使用getProjectByKey,然后使用getProjectWithSchemesById,但无法获取我需要的用户信息。
答案 0 :(得分:1)
使用标准API啰嗦,但现在就去。
getProjectWithSchemesById为您提供了一个RemoteProject对象。可能必须由具有jira-admin权限的用户调用。请注意,getProjectByKey不会在返回的值中设置权限方案,但是可以方便地获取要在getProjectWithSchemesById中使用的项目ID。
getProjectWithSchemesById中的RemoteProject对象有一个返回RemotePermissionScheme对象的getPermissionScheme方法。
RemotePermissionScheme对象具有getRemoteEntries方法
生成的RemoteEntries数组是您需要迭代以查找“浏览”权限以及哪些用户和组拥有它。
〜马特
答案 1 :(得分:0)
soap操作getIssue将抛出RemotePermissionException http://docs.atlassian.com/rpc-jira-plugin/latest/com/atlassian/jira/rpc/exception/RemotePermissionException.html 当用户尝试访问权限时,她不应该访问。
不确定如何在python中完成此操作,但我确信应该有办法在方法中捕获异常。
弗朗西斯