Get connection configuration
Forms a complete structure of connection settings that can be used instead of the actual connection when calling other functions
Function GetConnectionConfiguration(Val SSHSettings, Val Proxy = Undefined) Export
| Parameter | CLI option | Type | Required | Description |
|---|---|---|---|---|
| SSHSettings | --set | Structure Of KeyAndValue | ✔ | SSH settings |
| Proxy | --proxy | Structure Of KeyAndValue | ✖ | Proxy settings, if required. See GetProxySettings |
Returns: Structure Of KeyAndValue - Connection settings structure
tip
Can be passed as the Connection parameter in other functions instead of the actual connection from the CreateConnection function.
At the same time, a new connection will be opened and closed within the called function
It is not recommended to use the connection configuration for multiple requests to the SSH server. This functionality is primarily intended for the CLI version of OInt, where maintaining a connection between calls is not possible
1C:Enterprise/OneScript code example
Host = "172.33.0.13";
Port = "2222";
UseProxy = True;
ProxySettings = Undefined;
AuthorizationType = "By login and password";
If AuthorizationType = "By login and password" Then
Login = "bayselonarrend";
Password = "12we...";
SSHSettings = OPI_SSH.GetSettingsLoginPassword(Host, Port, Login, Password);
ElsIf AuthorizationType = "By key" Then
Login = "bayselonarrend";
PrivateKey = "./ssh_key";
PublicKey = "./ssh_key.pub";
SSHSettings = OPI_SSH.GetSettingsPrivateKey(Host, Port, Login, PrivateKey, PublicKey);
Else
Login = "bayselonarrend";
SSHSettings = OPI_SSH.GetSettingsViaAgent(Host, Port, Login);
EndIf;
If UseProxy Then
ProxyType = "http"; // http, socks5, socks4
ProxyAddress = "127.0.0.1";
ProxyPort = "8071";
ProxyLogin = "proxyuser";
ProxyPassword = "12we...";
ProxySettings = OPI_SSH.GetProxySettings(ProxyAddress, ProxyPort, ProxyType, ProxyLogin, ProxyPassword);
EndIf;
Result = OPI_SSH.GetConnectionConfiguration(SSHSettings, ProxySettings);
- Bash
- CMD/Bat
# JSON data can also be passed as a path to a .json file
oint ssh GetConnectionConfiguration \
--set "{'auth_type':'private_key','host':'172.33.0.13','port':'2222','username':'bayselonarrend','key_path':'***','pub_path':'/tmp/d4nbv42e.ise.tmp'}" \
--proxy "{'server':'127.0.0.1','port':'8071','proxy_type':'http','login':'proxyuser','password':'***'}"
:: JSON data can also be passed as a path to a .json file
oint ssh GetConnectionConfiguration ^
--set "{'auth_type':'private_key','host':'172.33.0.13','port':'2222','username':'bayselonarrend','key_path':'***','pub_path':'/tmp/d4nbv42e.ise.tmp'}" ^
--proxy "{'server':'127.0.0.1','port':'8071','proxy_type':'http','login':'proxyuser','password':'***'}"
Result
{
"set": {
"auth_type": "password",
"host": "172.33.0.13",
"port": 2222,
"username": "bayselonarrend",
"password": "***"
},
"proxy": {
"server": "host.docker.internal",
"port": 1080,
"proxy_type": "socks5",
"login": "proxyuser",
"password": "***"
}
}