解决了

未经授权用于Nutanix REST API。检查用户名和密码

  • 2019年8月1日
  • 6个答复
  • 2888次观点

徽章 +2
我正在尝试将Zenoss连接到Nutanix Prism群集,并为监视人员提供了一个用户名和PW以及群集IP。他们正在遇到错误的错误,错误是在此帖子的标题中。检查用户名和密码

因此,我向监视人员提供了Nutanix帐户和PW,但它仍然出现相同的错误。

请指教。我必须在这里缺少一些东西。
图标

最好的答案Thegman2019年8月8日,20:22

查看原件

6个答复

UserLevel 2
徽章 +1
不确定这是否会有所帮助,但是我正在使用API​​呼叫完成PowerShell脚本,因为不存在必要的PowerShell CMDLET。这是对我有用的代码段:

代码:
$ header = @{“授权” =“ basic”+[system.convert] :: tobase64string([System.text.Encoding] :: utf8.getBytes($ username+“:”+$ password)}}}}

foreach($集群中的$ cluster){
Connect -NutanixCluster -Server $ cluster -username $ username -password $ secpassword -Acceptinvalidsslcerts -forceedConnection |淘汰
$ pdlist = get-ntnxprotectiondomain |其中{$_。活动-eq $ true}

foreach($ pd in $ pdlist){
$ url =“ https://”+$ cluster+“:9440/prismgateway/services/rest/v1/v1/procection_domains/”+$ pd.name+“/stargeules”
尝试{$ output = Invoke -restmethod -method get -uri $ url -headers $ header -useBasicParsing} catch {$ output =''}


他们将CMDLET授予Securestring对象,但其余标头中的密码是纯文本。

我怀疑标题信息或URL可能会有一个线索。我花了一段时间才找到URL的“ Prismgateway/Services/REST/V1”一部分。

仅供参考,我从中获得了代码http://myvirtualcloud.net/how-to-powershell-connection-nutanix-nutanix-and-ectecute-your-1st-query/
徽章 +2
谢谢,我没有试图编写任何编码,我正在尝试连接开箱即用的第三方工具,以与Nutanix合作监视Nutanix基础架构。错误消息会相信这是一个权利问题,我尝试了我创建的新本地帐户以及Nutanix帐户,这两个帐户都可以允许我连接到Prism。

Zenoss的Nutanix Zenpack的文档简单地说明了用户名,PW和IP进行连接..以及有关揭露V1和V2 API的一些信息...到目前为止,我对此产品的经验还不是理想的,我正在尝试尝试保持积极..
UserLevel 2
徽章 +1
我为此使用的帐户和我们的Nagios检查是本地Prism元素帐户。我不知道Prism Central帐户是否有效。另外,我认为本地帐户需要成为观众角色。

另请注意,我还通过SNMP进行Nagios检查。是否使用SNMP的监视工具?这是SNMP设置中的一个单独的用户帐户(有一个用户选项卡)。我认为SNMP V3是需要用户/通行证,V1和V2使用社区字符串的v3。我的配置有一个用户名,一个authkey和privkey,因此我正在使用V3。我认为该命令还需要安全类型(AES,SHA等)https://portal.nutanix.com/#/page/kbs/details?targetId=ka0600000008baecay
徽章 +2
嗨,BBEAVIS-为此,我想知道这一点,但是现实是Nutanix的Zenoss Zenpack并未对设备进行轮询,它正在连接到API,这就是为什么错误弹出有关未获得API授权的错误的原因。

一件事让我感到震惊,将Zenoss连接到Nutanix的第一个说明是“您必须揭露V1和V2 API”。.我在Nutanix文档中没有看到任何指向任何需要进行任何配置的内容“揭露API”

我尝试了我创建的本地帐户和Nutanix帐户,但两个帐户都带回了相同的错误。

我现在开始相信这是其他误解的其他沟通错误。但是,没有防火墙阻止设备之间的流量。我们能够与Prism Central建立成功的联系,但我们还没有准备好与Prist En一起生活,因此我们首先与Prism E连接。此外,连接到集群IP提供了Prism Central不提供的冗余,因此我更喜欢使用棱镜E作为监视我们的Nutanix群集的连接点,并将Prism保持中心以进行其他MGMT使用。

HTTP代理和白名单怎么样?我们在Prism中配置了代理,我是否需要在列出查询系统的Zenoss收集器的IPS时?我还没有尝试过,直到群集健康,也无法做到这一点,显然,工程师正在进行一个支持调用,所以我还不能测试任何东西。
UserLevel 2
徽章 +1
不幸的是,我不使用代理。在暴露API方面,我没有做任何特别的事情。看来V1-V3在我的系统上开放,但我认为每个版本的API URL不同。

代码:
/Prismgateway/Services/REST/V1/
/prismgateway/services/rest/v2.0/
/api/nutanix/v3/


您可能会遇到身份验证错误,但这将表明PE正在侦听API URL。

因此,尝试从浏览器中尝试
代码:
https://:9440/prismgateway/services/rest/v1/vms
https://:9440/prismgateway/services/rest/v2.0/vms
https://:9440/api/nutanix/v3/vms


如果您遇到404或500的错误,那么应该更深入研究(我想)。理想情况下,如果您可以从监视系统(WGET或Curl If Linux)执行此操作,那么这可能有助于确定位置的位置。如果您想要成功的结果,则需要像代码示例中的用户/传递请求的标题。

回复


Baidu