【问题标题】:Issues Adding Agents to RSA Authentication Manager using the RSA Authentication Manager SDK使用 RSA Authentication Manager SDK 将代理添加到 RSA Authentication Manager 的问题
【发布时间】:2021-08-17 13:27:11
【问题描述】:

我正在使用 RSA Authentication Manager SDK 通过 PowerShell 将代理添加到我们的 RSA Authentication Manager (8.X)。我可以使用以下代码毫无问题地查询现有代理:

$searchAgent = New-Object rsaapi.SearchAgentsCommand
$searchAgent = ($CommandServer.executeCommand($loginCommand.sessionId,$searchAgent)).agents

但是,在尝试添加新代理时,我从最后一行返回了 "Cannot convert argument "in1", with value: "rsaapi.AgentDTO", for "executeCommand" to type "rsaapi.TargetableCommand": "Cannot convert the "rsaapi.AgentDTO" value of type "rsaapi.AgentDTO" to type "rsaapi.TargetableCommand".""。这是我的代码 sn-p:

$hostDTO = New-Object rsaapi.HostDTO
$hostDTO.name = $servername
$hostDTO.primaryIpAddress = $ipAddress

$agentDTO = New-Object rsaapi.AgentDTO
$agentDTO.name = $servername
$agentDTO.primaryAddress = $ipAddress
$agentDTO.agentType = 1
$agentDTO.offlineAuthDataRefreshRequired = $false
$agentDTO.restriction = $false
$agentDTO.securityDomainId = 'ims.securityDomainGUID'
$agentDTO.securityDomainName = 'securityDomainName'

$addAgent = New-Object rsaapi.AddAgentCommand
$addAgent = $CommandServer.executeCommand($loginCommand.sessionId,$agentDTO)

AdminAPIDemo 下面的 Python 代码块展示了如何添加新代理:

def createAgent(self, name, addr, alt, sdGuid):
    # need a HostDTO to be set
    host = HostDTO()
    host.setName(name)
    host.setPrimaryIpAddress(addr)
    host.setSecurityDomainGuid(sdGuid)
    host.setNotes("Created by AM Demo code")

    # the agent to be created
    agent = AgentDTO()
    agent.setName(name)
    agent.setHost(host)
    agent.setPrimaryAddress(addr)
    agent.setAlternateAddresses(alt)
    agent.setSecurityDomainId(sdGuid)
    agent.setAgentType(AgentConstants.STANDARD_AGENT)
    agent.setRestriction(1) # only allow activated groups
    agent.setEnabled(1)
    agent.setOfflineAuthDataRefreshRequired(0)
    agent.setNotes("Created by AM Demo code")

    cmd = AddAgentCommand(agent)

try:        
    cmd.execute()
    except DuplicateDataException:
        print "ERROR: Agent " + name + " already exists."
    sys.exit(2)
    
    # return the created agents GUID for further linking
    return cmd.getAgentGuid()

任何帮助将不胜感激!

【问题讨论】:

    标签: python powershell api sdk


    【解决方案1】:

    通过 PowerShell 将代理添加到 RSA Authentication Manager 控制台的工作代码:

    $hostDTO = New-Object rsaapi.HostDTO
    $hostDTO.name = $servername
    $hostDTO.primaryIpAddress = $ipAddress
    
    $agentDTO = New-Object rsaapi.AgentDTO
    $agentDTO.name = $servername
    $agentDTO.host = $hostDTO
    $agentDTO.primaryAddress = $ipAddress
    $agentDTO.agentType = 1
    $agentDTO.offlineAuthDataRefreshRequired = $false
    $agentDTO.restriction = $true
    $agentDTO.securityDomainId = 'ims.securityDomainGUID'
    $agentDTO.securityDomainName = 'securityDomainName'
    
    $addAgent = New-Object rsaapi.AddAgentCommand
    $addAgent.agentDTO = $agentDTO
    $addAgent = $CommandServer.executeCommand($loginCommand.sessionId,$addAgent)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-23
      • 1970-01-01
      • 1970-01-01
      • 2014-06-08
      • 1970-01-01
      • 2013-01-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多