12 Replies Latest reply on Jul 15, 2019 11:09 PM by xian_

    Custom Properties not being passed in Event Broker payload? [Permissions?]

    craigso Enthusiast

      thank you for taking the time to read this post!

       

      We recently ran into an issue where custom property values are not getting passed to vRO via the event broker/subscriptions. In our case we have a VM provisioning blueprint with a custom form. It has a few elements (check boxes and text fields) on it that take user input and store the values into custom properties. These properties get passed via the payload to vRO and we take actions on their values.

       

      While this has been working great for the our team, once we hand the form off to a non-administrative vRA user to consume, the properties are sent, but the user inputted values are not. Initially I thought there was something wrong with our blueprints so I recreated the blueprint only adding a few raw elements to test the payload. (shown below)

       

      Properties:

       

      Blueprint/custom form:

       

      We then have a event subscription to trigger when a VM is successfully provisioned.

       

      As I mentioned above, this configuration works great for an administrative user. If a normal user with permissions to simply run the blueprint requests a VM, the properties values are not passed. Here are the log runs which show the payload properties for admin vs non-admin:

       

      admin user:

      2019-07-10 14:43:19.000 -07:00DEBUGvCAC VM properties :
      Base.Description : 
      Base.Hostname : CAS-vRATest-2
      Base.InstanceNumber : 
      Base.NetworkZone : 
      Base.OU : CAS
      Base.ServerName : 
      Cafe.Shim.VirtualMachine.TotalStorageSize : 40
      Extensibility.Lifecycle.Properties.VMPSMasterWorkflow32.BuildingMachine : *
      Extensibility.Lifecycle.Properties.VMPSMasterWorkflow32.MachineActivated : *
      Extensibility.Lifecycle.Properties.VMPSMasterWorkflow32.MachineProvisioned : *
      Hostname : CAS-vRATest-2
      UO.IS.TDX-AdditionalNetworkingDetails : test
      UO.IS.TDX-AdditionalStorageDetails : test
      UO.IS.TDX-RequestAdditionalNetworking : true
      UO.IS.TDX-RequestAdditionalStorage : true
      UO.IS.TDX-RequestFirewallRuleDescription : test
      UO.IS.TDX-RequestFirewallRules : true
      UO.IS.TDX-RequestOther : testing
      UO.IS.TDX-SupportedOUs : IS,CAS,CTL
      UO.IS.TDX.Create_Ticket : True
      

       

       

      non admin:

      2019-07-10 14:04:04.000 -07:00DEBUGvCAC VM properties :
      Base.Description : 
      Base.Hostname : 
      Base.InstanceNumber : 
      Base.NetworkZone : 
      Base.OU : 
      Base.ServerName : 
      Cafe.Shim.VirtualMachine.TotalStorageSize : 40
      Extensibility.Lifecycle.Properties.VMPSMasterWorkflow32.BuildingMachine : *
      Extensibility.Lifecycle.Properties.VMPSMasterWorkflow32.MachineActivated : *
      Extensibility.Lifecycle.Properties.VMPSMasterWorkflow32.MachineProvisioned : *
      Hostname : cas-vRAtest1
      UO.IS.TDX-AdditionalNetworkingDetails : 
      UO.IS.TDX-AdditionalStorageDetails : 
      UO.IS.TDX-RequestAdditionalNetworking : 
      UO.IS.TDX-RequestAdditionalStorage : 
      UO.IS.TDX-RequestFirewallRuleDescription : 
      UO.IS.TDX-RequestFirewallRules : 
      UO.IS.TDX-RequestOther : 
      UO.IS.TDX-SupportedOUs : IS,CAS,CTL
      UO.IS.TDX.Create_Ticket : True
      

       

      The values that do get passed in both log runs are static defined in the custom property definition. The values that are missing are user inputted values.

       

      Any idea why we are seeing this behavior? Ideally the properties would get passed even for a standard user.