sassoftware / saspy

A Python interface module to the SAS System. It works with Linux, Windows, and Mainframe SAS as well as with SAS in Viya.
https://sassoftware.github.io/saspy
Other
366 stars 149 forks source link

Cannot find location of sspiauth.dll with SAS EG 8.3 #597

Closed adm-gis closed 2 months ago

adm-gis commented 2 months ago

Environment: Client: SAS EG: Version 8.3 Remote SAS Sever: Version 9.4 (protocol IOM, port 8591) Windows 10 Java version 8 (update 251)

I can establish a connection to the server through the SAS EG.

Following the instructions from the documentation I want to add location of sspiauth.dll to the system path for IWA, but the following directory doesn't exist: "SASHome\SASFoundation\9.4\core\sasex" . In fact, the SASFoundation folder doesn't exist.

I did try using "SASHome\SASPrivateJavaRuntimeEnvironment\9.4\jre\bin\sspi_bridge.dll" without any luck.

I have tried the following configurations:

winiomwin  = {'java'    : 'C:\\Program Files (x86)\\Java\\jre1.8.0_251\\bin\\java.exe',
            'iomhost'   : 'servername',
            'iomport'   : 8591,
            }
winiomIWA  = {'java'    : 'java',
            'iomhost'   : 'servername',
            'iomport'   : 8591,
            'sspi'      : True
            }

Receiving error message:

Using SAS Config named: winiomIWA
We failed in getConnection
The native implementation module for the security package could not be found in the path.

Any help would be much appreciated. Thanks.

tomweber-sas commented 2 months ago

Hey, I can help with that. The sspiauth.dll is in a SAS deployment, so if you only have the EG client installed, it won't be there. Since it's required for the IWA authentication method, you would need to copy it from a SAS deployment (the workspace server you're connecting to, or any SAS install), to your machine and add it's location to your system PATH variable. Since it may be hard to get a copy from somewhere else, Tech Support has provided a download you can use here: http://ftp.sas.com/techsup/download/base/?C=N;O=D

Just grab it and save it somewhere and add that path to your System Path. Note it's the full path of the directory that goes in the PATH, not the path including sspiauth.dll. Just the directory it's in.

See if that solves it for you! Tom

adm-gis commented 2 months ago

Hi! That's super helpful. I got the connection established. Had to restart the terminal to get the updated Path. Much appreciated and have a great day.

tomweber-sas commented 2 months ago

Awesome! Glad it's working!