- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I am currently using EG 6.1. I have saved my credentials to our server multiple times on the connection profile. However, each time I open an EG project, it prompts me for the credentials. Besides the fact that it is annoying to enter them ever time, I have a task scheduled to run a project during the evening and it fails because it is being prompted for the server credentials. The project itself doesn't even need the server as it runs locally. What I am finding is that it is all or nothing with EG... if I have a connection set up, it is not at the project level but for all of EG.
I am hoping someone can tell me if there is a better way or if I am doing something wrong with the setup under options -> Administration -> Connections. I save all of the server info and credentials but it doesn't seem to matter. I also have my credentials persistence set to "Persist for Users" in the security menu.
Thanks!
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
My guess is your EG connection profile is corrupted and changes to it are not being saved. I suggest you delete your current profile and then try saving it again. Here is a brief explanation of where to find this:
Connection profiles are stored in an XML file called ConfigurationVnn.xml (where nn is the SAS Enterprise Guide version number) in the user’s application data area (for example, %appdata%\SAS\MetadataServerProfiles\ConfigurationV61.xml).
I'm pretty sure you can find the location of the profile in EG Options.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Thanks @SASKiwi. I tried what you suggested with no luck. However, I see what is going on. I noticed that when I set up the profile and choose "save login info" the box will not remained checked after connecting to the server. I tried to manually change the xml file to "true" for that flag as well. When I log into the server that flag is changed back to false. Could there be some sort of policy on the server that will not allow those credentials to be saved? If not, I may be out of luck unless you have other suggestions.
Bottom line is that this is going to prevent me from scheduling enterprise guide projects to run with task manager because it will prompt for the connection every time.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Yes, this behavior is set on the metadata server with the SASSEC_LOCAL_PW_SAVE option.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Thanks Chris. I was afraid of that.
I was actually just reading a couple of your posts trying to figure this out, specifically this one. http://blogs.sas.com/content/sasdummy/2012/04/17/doing-more-with-sas-enterprise-guide-automation/#co...
After digging around in the comments of another post, I found this article.
http://support.sas.com/kb/30/917.html
I tried creating this credentials file for EG 6.1, saved a copy in all of the potential locations based off of the older versions in the article but I still have no luck.
If I go into the project and make sure it is set up on a local server where the credentials are not required, it works. However, it only works IF I don't have another EG project where I have logged into the server. It seems EG saves the credentials of the last project that was opened. This is all very puzzling.
Is there another way to work around the setting on the server that will not allow me to save the credentials locally? I really need to be able to get past this for scheduling to work properly.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
@ChrisHemedinger, not sure if you got the chance to see my reply yesterday. Do you have any recommendations on ways I can work around this?
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Hey @elwayfan446,
I suggest that you work with SAS Tech Support on this. I recommend that you turn on logging with logging.config, and that will generate some diagnostic logs even when running in automation. Those logs might help to reveal where EG is looking for (and not finding) credentials.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
In the folder C:\users\myvunetid\appdata\roaming\sas\metadataserverprofiles
(myvunetid is my vunet-id) there is a file named “configurationV71.xml”
Change the contents to as follows:
<?xml version="1.0" encoding="utf-8"?>
<Configuration LastWrittenBy="Engine Configuration Manager" FileVersion="2">
<Profiles>
<Profile>
<Name>******</Name>
<Description>******</Description>
<Type>OMS</Type>
<Hosts>
<Host machine="*****" port="8561" />
</Hosts>
<UseIWA>False</UseIWA>
<SaveLogin>True</SaveLogin>
<User>******</User>
<Password>****** </Password>
<DefaultServer>SASApp</DefaultServer>
</Profile>
</Profiles>
<Settings>
<ActiveProfile>******</ActiveProfile>
<GenerateLocalServer>False</GenerateLocalServer>
</Settings>
</Configuration>
Change ****** to real names you would use.
Please use
proc pwencode in='your-password';
run;
to generate encode password like:
{sas002}6FE4B62647E0E59721B8CAD44A12345C
Put the encode word as the password in the xml file.
The most important part is you must set this file (configurationV7.xml) to read only.
This will prevent the globe policy to update it (which would set user_id and password to space and ask you to key in).
This method stored the user_id, password and the active profile name in your local desktop. It would not be changed by your domain policy. You can schedule the project (you must put the active profile name in the configurationV71.xml to let EG directly link to that profile).
This may be the only way I can find to schedule the EG project on your desktop if the domain policy would ask your credentials every time when you open the EG.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
@shenghuani - the proper way to handle scheduling and credentials is via a configured credentials.xml, which is described here in this SAS Note. It's not a good idea to circumvent your IT/SAS Admin policy of always prompting for credentials. If your site has determined that this policy is needed, you may be introducing an unwelcome risk into your work. If you disagree with the policy, it's better to lobby with the admin and try to make your case.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Since originally posting my question, my company has moved our sas server and now uses our network credentials for access. Because of this, I no longer have this issue. However, I appreciate everyone trying to help me resolve it. @ChrisHemedinger is right, it all boiled down to a corporate policy that doesn't allow the feature to hold the login information for next time EG is opened.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
@elwayfan446 Good to know. My organization has also changed the server policy to let the user_id and password to be stored.
I just provided the answer for someone who had the same problem, if the server policy did not allow to store the credentials in the desktop.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
I found it did not need the credentials.xml in EG7.1 to schedule a project. I tested and it worked without setting up this credentials.xml.
The only problem was the sever policy had overwriten the contents in the configurationV71.xml. If set to read only, then your user_id , password would always be there.
From the link you provided, (http://support.sas.com/kb/30/917.html)
"If logon credentials for the SAS Metadata Server are not cached on the client side, scheduling of SAS Enterprise Guide projects is not possible."
To edit the configurationV71.xml by adding user_id, password and active profile name and set this file to read only will cache the logon credentials on the client side and allow the project to be scheduled.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
I have been struggling against this same issue for the better part of a week. Shenghuani's answer was the only thing I could do that would eventually get this to perform consistently. I was finally able to figure out that the config71 file was having the active profile overwritten to a null profile even when I manually set it as the active profile in SAS EG / saved my login info within the profile / set the profile security to inherit for my Windows user (as opposed to project level). Maybe I missed a step in telling SAS to save it as the active profile across projects? I attempted to use the credentials.xml file in the note I have seen mentioned in multiple places in my search to solve this. I was unable to have any luck and never got a sense EG was trying to read that file. I also noticed there is no mention of 6.1 or 7.1 in that note, so thought maybe there is a new way to do this. Is the credentials.xml still SAS' recommended way to handle this? I would prefer to not have to lock down one of SAS' config files, but so far this is the only way I can get it to perform consistently. I would be happy to try other approaches if you have any suggestions. Thanks to both of you for the breadcrumbs you left.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
@jbbell None of that should be necessary. I suggest you work with SAS Tech Support on this -- they should be able to help you gather the right logs needed to diagnose what's going on. You can get a head start by enabling Application Logging in Tools->Options.