Change Security Model On NAV 5.0 SP1 Windows Server 64bits

nav_studentnav_student Member Posts: 175
Hi,

i have an problem:

Situation:
I have the Dynamics Nav 5.0 SP1. ( OS. - Windows Server 2008 Std 64 bits.
I have already put on the SQL the extended procedures that point to xp_ndo_x64.dll.
Everything works fine when users try to acess to NAV with Windows Authentication.

Problem:
i have change my Security Model ( Advanced tab) from Enhanced to Standard.
On the tab Options i have put the option Single User.
Then the NAV change the objects.
But when i try to open the database with Windows Authentication the following error appears:

The extended stored procedure xp_ndo_enumuserids in the library file xp_ndo.dll, is not available on the XXXX server.
Until this procedure and library have been added, it will not be possible to connect to this server from Microsoft Dynamics NAV with Windows Authentication, but you still be able to connect with Database Server Authentication


What is wrong?

Thanks in avance for your help.

Comments

  • krikikriki Member, Moderator Posts: 9,110
    Did you run these commands in TSQL to create the stored procedure (probably you need to change the subdir/filename)?:

    USE master
    EXEC sp_addextendedproc xp_ndo_enumusergroups, 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\xp_ndo.dll'
    GO

    GRANT EXECUTE
    ON [xp_ndo_enumusergroups]
    TO PUBLIC
    GO

    USE master
    EXEC sp_addextendedproc xp_ndo_enumusersids, 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\xp_ndo.dll'
    GO

    GRANT EXECUTE
    ON [xp_ndo_enumusersids]
    TO PUBLIC
    GO
    Regards,Alain Krikilion
    No PM,please use the forum. || May the <SOLVED>-attribute be in your title!


  • nav_studentnav_student Member Posts: 175
    I do not run this Script.
    I have made this steps manually before the change and everything works fine.

    After the change of the security model i have to run this script, pointing to xp_ndo_x64.dll??
  • strykstryk Member Posts: 645
    With "Standard" security you need only xp_ndo_enumusersids. I recommend to create this XP manually with SSMS, by selecting the DLL with the fiile-browser (just to avoid any mistakes).
    Then manually grant EXECUTE rights for the XP to PUBLIC.

    And of course you made sure the xp_ndo_x64.dll is the correct version, matching your NAV version?

    And: are you running a Cluster? In this case the DLL must be available on both nodes.
    Jörg A. Stryk (MVP - Dynamics NAV)
    NAV/SQL Performance Optimization & Troubleshooting
    STRYK System Improvement
    The Blog - The Book - The Tool
  • nav_studentnav_student Member Posts: 175
    Styrk,

    I created this XP manually with SSMS, by selecting the DLL with the fiile-browser and manually grant EXECUTE rights for the XP to PUBLIC.
    And everything works fine on Ehnaced security model.



    But when i change to Standard the error message appears.

    My question is:
    After changing the Security Model ( Ehanced -> Standard) i have to change anything on the Extended Stored Procedures? Why appears this message?

    The xp_ndo_x64.dll that i have is from Instalation CD ( Dynamics NAV 5.0 SP1).

    I don´t have any cluster.
  • strykstryk Member Posts: 645
    "Standard" security uses xp_ndo_enumusersids
    "Enhanced" security uses xp_ndo_enumusergroups

    That's the only difference (regarding the XP). Both XP are using the same DLL ...
    Jörg A. Stryk (MVP - Dynamics NAV)
    NAV/SQL Performance Optimization & Troubleshooting
    STRYK System Improvement
    The Blog - The Book - The Tool
  • nav_studentnav_student Member Posts: 175
    Ok.

    I gone to configure again the xp_ndo_enumusersids on SQL Server.

    Then i tell what it happens.

    Thanks for your help!

    :)
  • nav_studentnav_student Member Posts: 175
    Hi guys.

    Running this Script with the DLL for 64 bits and it works.

    Strange that i run the same thing manually and do not works.
    USE master
    EXEC sp_addextendedproc xp_ndo_enumusersids, 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\xp_ndo.dll'
    GO
    
    GRANT EXECUTE
    ON [xp_ndo_enumusersids]
    TO PUBLIC
    GO
    Did you run these commands in TSQL to create the stored procedure (probably you need to change the subdir/filename)?:
    
    USE master
    EXEC sp_addextendedproc xp_ndo_enumusergroups, 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\xp_ndo.dll'
    GO
    
    GRANT EXECUTE
    ON [xp_ndo_enumusergroups]
    TO PUBLIC
    GO
    
    USE master
    EXEC sp_addextendedproc xp_ndo_enumusersids, 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\xp_ndo.dll'
    GO
    
    GRANT EXECUTE
    ON [xp_ndo_enumusersids]
    TO PUBLIC
    GO
    
  • LambaLamba Member Posts: 260
    I don't have product cd available with me and don't have the xp_ndo.dll file.

    what can be the process to solve the issue.
Sign In or Register to comment.