cancel
Showing results for 
Search instead for 
Did you mean: 
SOLVED

Device Portal - Key Switch?

Device Portal - Key Switch?

jacaré
Long-established Member

Is remote access of the device portal to a ctrlX Core via key switch possible? Preferably with as little additional hardware as possible. Just as is usually done with Nexeed RSA. See here at 6.1 "Initiate Remote Access": https://www.bosch-connected-industry.com/de/media/en/loesungen/nexeed_remote_shopfloor_access/suppli... 

3 REPLIES 3

JulianW
Community Moderator
Community Moderator

Hi jacare,

yes, it is. You can set the policy on the device to "ask user" before the remote access is enabled. This will trigger a request on the device before the access is granted. One can acknoledge this request on the webinterface of the ctrlX CORE, on a web-based HMI what integrates it via the data layer or with other logic e.g. as you describe it. It is up to you what setup you want. The connection can be cut on the device side any time. Individual user permissions can be set.

If you want to have a physical key switch of course you need to add and connect it to your setup.

Cheers

J

 

 

jacaré
Long-established Member

thanks for the answer. Still, could you guide me in the right direction when I have a TRUE or a "1" in the data layer for example with an IO module. Where and how should I implement the logic to now allow the VPN access when a TRUE is on a data layer node?

CodeShepherd
Community Moderator
Community Moderator

There is no predefined function to do so but you can use the REST API e.g. with Node-RED or the PLC.

There are at least two possibilities:

  1. Open tunnel in dependence of a bit on the Data Layer:
    1. Check the state of your bit
    2. Write tunnel command depending of the status:
      PUT	https://192.168.0.169/remote-agent/api/v1/remoteaccess​

      Open:

      {"enabled":true}
      Close:
      {"enabled":false}


  2. Send a command from the device portal to the core to open the remote access tunnel:
    1. Read out the commands that are sent to the control via the device portal
      Command:
      GET https://192.168.0.169/remote-agent/api/v1/commands​
      Response:
      [
        {
          "id": "xxxxxxxxxxxxxxxxxxxxxxxxx",
           "deviceId": "urn:bosch:deviceportal:id:ctrlXCORE.seq.xxxxxxxxxxxxDG",
          "commandType": "UPDATE_TUNNEL",
          "state": "TRANSMITTED",
          "softwareId": "",
          "source": "",
          "target": "",
          "timestamp": 1634217813,
          "Raw": {
            "cmd": "UPDATE_TUNNEL",
            "id": "xxxxxxxxxxxxxxxxxxxxxxxxx",
            "tunnelStateActive": "true"
          }
        }
      ]​
    2. Acknowledge the command in dependence of another bit on the Data Layer
      Command:
      PUT	https://192.168.0.169/remote-agent/api/v1/commands/xxxxxxxxxxxxxxxxxxxxxxxxx
      Request:
      {
      	"id": "xxxxxxxxxxxxxxxxxxxxxxxxx",
      	"deviceId": "urn:bosch:deviceportal:id:ctrlXCORE.seq.xxxxxxxxxxxxDG",
      	"commandType": "UPDATE_TUNNEL",
      	"state": "ACCEPTED",
      	"softwareId": "",
      	"source": "",
      	"target": "",
      	"timestamp": 1634217813,
      	"Raw": {
      		"cmd": "UPDATE_TUNNEL",
      		"id": "xxxxxxxxxxxxxxxxxxxxxxxxx",
      		"tunnelStateActive": "true"
      	}
      }​

 

Icon--AD-black-48x48Icon--address-consumer-data-black-48x48Icon--appointment-black-48x48Icon--back-left-black-48x48Icon--calendar-black-48x48Icon--center-alignedIcon--Checkbox-checkIcon--clock-black-48x48Icon--close-black-48x48Icon--compare-black-48x48Icon--confirmation-black-48x48Icon--dealer-details-black-48x48Icon--delete-black-48x48Icon--delivery-black-48x48Icon--down-black-48x48Icon--download-black-48x48Ic-OverlayAlertIcon--externallink-black-48x48Icon-Filledforward-right_adjustedIcon--grid-view-black-48x48IC_gd_Check-Circle170821_Icons_Community170823_Bosch_Icons170823_Bosch_Icons170821_Icons_CommunityIC-logout170821_Icons_Community170825_Bosch_Icons170821_Icons_CommunityIC-shopping-cart2170821_Icons_CommunityIC-upIC_UserIcon--imageIcon--info-i-black-48x48Icon--left-alignedIcon--Less-minimize-black-48x48Icon-FilledIcon--List-Check-grennIcon--List-Check-blackIcon--List-Cross-blackIcon--list-view-mobile-black-48x48Icon--list-view-black-48x48Icon--More-Maximize-black-48x48Icon--my-product-black-48x48Icon--newsletter-black-48x48Icon--payment-black-48x48Icon--print-black-48x48Icon--promotion-black-48x48Icon--registration-black-48x48Icon--Reset-black-48x48Icon--right-alignedshare-circle1Icon--share-black-48x48Icon--shopping-bag-black-48x48Icon-shopping-cartIcon--start-play-black-48x48Icon--store-locator-black-48x48Ic-OverlayAlertIcon--summary-black-48x48tumblrIcon-FilledvineIc-OverlayAlertwhishlist