Quantcast
Channel: THWACK: Popular Discussions - Orion SDK
Viewing all articles
Browse latest Browse all 3719

Access to Orion.Discovery.CreateCorePluginConfiguration verb denied

$
0
0

Hello, i have been googling this issue all day without success of finding a solution. I am fairly new to orionSDK and i want to make my life easier to find available ip adresses. The code is as follows.

 

from __future__ import print_function                                                                                
import re                                                                                                            
import requests                                                                                                      
from orionsdk import SwisClient                                                                                      
import getpass                                                                                                                                                                                                                            
def main():                                                                                                              npm_server = 'mw-solarwinds.***.**'                                                                                  username = 'jnk@***.**'                                                                                              password = getpass.getpass()                                                                                         target_node_ip = '10.112.12.0'                                                                                       snmpv3_credential_id = 3                                                                                             orion_engine_id = 2                                                                                                                                                                                                                       swis = SwisClient(npm_server, username, password)                                                                    print("Add an SNMP v3 node:")                                                                                                                                                                                                             corePluginContext = {                                                                                                    'BulkList': [{'Address': target_node_ip}],                                                                           'Credentials': [                                                                                                         {                                                                                                                        'CredentialID': snmpv3_credential_id,                                                                                'Order': 1                                                                                                       }                                                                                                                ],                                                                                                                   'WmiRetriesCount': 0,                                                                                                'WmiRetryIntervalMiliseconds': 1000                                                                              }                                                                                                                                                                                                                                         corePluginConfig = swis.invoke('Orion.Discovery', 'CreateCorePluginConfiguration', corePluginContext)                                                                                                                                     discoveryProfile = {                                                                                                     'Name': 'Get available IP',                                                                                          'EngineID': orion_engine_id,                                                                                         'JobTimeoutSeconds': 3600,                                                                                           'SearchTimeoutMiliseconds': 5000,                                                                                    'SnmpTimeoutMiliseconds': 5000,                                                                                      'SnmpRetries': 2,                                                                                                    'ReeatIntervalMiliseconds': 1800,                                                                                    'SnmpPort': 161,                                                                                                     'HopCount': 0,                                                                                                       'PreferredSnmpVersion': 'SNMP2c',                                                                                    'DisableIcmp': False,                                                                                                'AllowDuplicateNodes': False,                                                                                        'IsAutoImport': True,                                                                                                'IsHidden': True,                                                                                                    'PluginConfigurations': [{'PluginConfigurationItem': corePluginConfig}]                                          }                                                                                                                                                                                                                                         print("Running discovery...")                                                                                        result = swis.invoke('Orion.Discovery', 'StartDiscovery', discoveryProfile)                                          print("Returned discovery profile id {}".format(result))                                                                                                                                                                              
requests.packages.urllib3.disable_warnings()                                                                                                                                                                                              
if __name__ == '__main__':                                                                                               main()   

 

The error received is as follows:

 

[root@ml-apiipam-t1 jnk]# python3.6 get_available_ip.py                                                                                                                                                                                                                                             
Password:                                                                                                                                                                                                                                                                                           
Add an SNMP v3 node:                                                                                                                                                                                                                                                                                
Traceback (most recent call last):                                                                                                                                                                                                                                                                    File "get_available_ip.py", line 57, in <module>                                                                                                                                                                                                                                                      main()                                                                                                                                                                                                                                                                                            File "get_available_ip.py", line 30, in main                                                                                                                                                                                                                                                          corePluginConfig = swis.invoke('Orion.Discovery', 'CreateCorePluginConfiguration', corePluginContext)                                                                                                                                                                                             File "/usr/local/lib/python3.6/site-packages/orionsdk/swisclient.py", line 29, in invoke                                                                                                                                                                                                              "Invoke/{}/{}".format(entity, verb), args).json()                                                                                                                                                                                                                                                 File "/usr/local/lib/python3.6/site-packages/orionsdk/swisclient.py", line 59, in _req                                                                                                                                                                                                                resp.raise_for_status()                                                                                                                                                                                                                                                                           File "/usr/local/lib/python3.6/site-packages/requests/models.py", line 940, in raise_for_status                                                                                                                                                                                                       raise HTTPError(http_error_msg, response=self)                                                                                                                                                                                                                                                  
requests.exceptions.HTTPError: 403 Client Error: Access to Orion.Discovery.CreateCorePluginConfiguration verb denied.                                                                                                                                                                               
 for url: https://mw-***.***.**:17778/SolarWinds/InformationService/v3/Json/Invoke/Orion.Discovery/CreateCoreP                                                                                                                                                                               
luginConfiguration   

 

 

If anyone can help me solve this problem i will forever be grateful. As mentioned, i am VERY new to the API.


Viewing all articles
Browse latest Browse all 3719

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>