SQL user problem

vikram7_dabas
Member Posts: 611
I have created new sql databse(.mdf) in navision by restoring the .fdb database,that contains the userID "SUPER" and PASSWORD IS blank,the .mdf database has sucssessfully restored,then I have closed that database(.mdf) when i again OPENING THAT DATABASE BY USING USEDID SSUPER AND PASSWORD BLANK,THEN IT GIVES ME THE ERROR Combination of USERID and Password is incoorect,I m not able to open that database(.mdf) and I have also created that userID "SUPER" and Password Blank in SQL server 2000,then again it is showing me d same error.give me the solution.Then again I have created d new .mdf databse by deleting the previous one and restored d the databse successfully then I have created the USERID "XYZ" abd password Blank and the same userIdD I have created in SQL SERVER 2000,and when I have closed that .mdf Database then again I m not able to open that (.mdf) databse same error occurs.and plzz tell me that while creating USERID where we have to put first in .MDF database or in SQL databse.
Vikram Dabas
Navision Technical Consultant
Navision Technical Consultant
0
Comments
-
Check the userid and password after restoring in the Tools : Security : Database Login.
Does the user id u are using has been defined in the backup database. I guess that can be the problem.same userIdD I have created in SQL SERVER 2000,
You are using 2000 :-k :-kCA Sandeep Singla
http://ssdynamics.co.in0 -
When restoring NAV backup on SQL, user passwords are not restored, because they are set on SQL and not in NAV. It means you need to create the user "SUPER" on MS SQL server first and set the password there. Good to set this user as Server_Admin to have all rights. After restore, you will be able to login as this user without problems...0
-
[Topic moved from Navision forum to SQL General forum]Regards,Alain Krikilion
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!0 -
kine wrote:It means you need to create the user "SUPER" on MS SQL server first and set the password there. Good to set this user as Server_Admin to have all rights.
additional:
You don´t have to set the user as "Server Admin" to grand all "navision" rights to the user. If you make "super" a "Server Admin" this will give the user the right on the sql server itself, which might not be exactly what you want to do.0 -
RudiRutsche wrote:kine wrote:It means you need to create the user "SUPER" on MS SQL server first and set the password there. Good to set this user as Server_Admin to have all rights.
additional:
You don´t have to set the user as "Server Admin" to grand all "navision" rights to the user. If you make "super" a "Server Admin" this will give the user the right on the sql server itself, which might not be exactly what you want to do.
I am not sure that "Server Admin" is a standard SQL 2005 Database Role. In order to setup a NAV user as a user, who can create and delete NAV Users in NAV without accessing SQL Server 2005, what SQL 2005 Database Role should he/she be assigned? Db_accessadmin or perhaps Db_securityadmin? I am looking for a Server Role with the absolute minimum of rights to do the job.Best Regards
JPE
Certified Dynamics NAV Professional0 -
The SQL Server Login needs to be a member of the SQL Server Role "Public" and the SQL Database user needs to be a member of the SQL database role "Public". This are both the defaults for these accounts. There is no reason to grant additional SQL access to normal NAV users. Only those users performing development or admin task require additional access.There are no bugs - only undocumented features.0
-
bbrown wrote:The SQL Server Login needs to be a member of the SQL Server Role "Public" and the SQL Database user needs to be a member of the SQL database role "Public". This are both the defaults for these accounts. There is no reason to grant additional SQL access to normal NAV users. Only those users performing development or admin task require additional access.
I am looking for
- a SQL 2005 Server Role with the absolute minimum of rights
that I can assign to a
- NAV-user
that have to administrate (Create, Read, Edit, Delete) NAV-users in Navision.
"Public" is not privileged enough - you will get SQL-errors in NAV if you try to create a new NAV-user through NAV with another NAV-user just with Role "public". I have tried with "Db_accessadmin" and "Db_securityadmin" but it still seems to fail. I think that "Db_owner" is too privileged a Role to assign a normal NAV-user from HR. Perhaps one should create a new SQL 2005 Server Role (fx "NAVUserAdministrator") just with permissions to CRED in the user-tabel? Then NAV-user from HR could be assigned the Roles "public" and "NAVUserAdministrator"?Best Regards
JPE
Certified Dynamics NAV Professional0 -
The ONLY SQL roles that are required are Public. NAV handles permissions thru SQL Application Roles.
User doing administration in NAV will need additional roles depending on the type of functions they are doing. The simplest (and common) approach is to make the Admin users members of the SysAdmin server role. In some cases this may be considered too open. In those cases, see the SQL BOL and assign appropriate roles. You should be able to acheive what you are looking for with standard roles.There are no bugs - only undocumented features.0 -
bbrown wrote:The ONLY SQL roles that are required are Public. NAV handles permissions thru SQL Application Roles.
User doing administration in NAV will need additional roles depending on the type of functions they are doing. The simplest (and common) approach is to make the Admin users members of the SysAdmin server role. In some cases this may be considered too open. In those cases, see the SQL BOL and assign appropriate roles. You should be able to acheive what you are looking for with standard roles.Best Regards
JPE
Certified Dynamics NAV Professional0 -
I have a bunch of databases to admin on a NAV testserver.
What I detected is, that in most databases i have to give this db roles to the user:
db_datawriter,db_datareader, db_ddladmin and db_securityadmin
But somehow some db require the user to be db_owner as well.
Does anybody know on what this depends on?0 -
What NAV Version do you run? There was indeed a bug in early 4.0 versions where it was necwssary to have all users set to "db_owner", but meanwhile that's fixed ...
With NAV you actually need this:
At lease one "sysadmin" (of course!)
NAV Developers: Server Role "public", Database Roles "public" & "db_owner"
NAV Users: Server- and Databaserole "public"
According to that you should use the "Standard" Security Model instead of the "Advanced" one. Every additional authentication is done by the "Application Roles" $ndo$shadow or $ndo$ar$... .
Why do you have to assign that specific roles? Actually that should be just required for non-NAV logins accessing the NAV database ...Jörg A. Stryk (MVP - Dynamics NAV)
NAV/SQL Performance Optimization & Troubleshooting
STRYK System Improvement
The Blog - The Book - The Tool0 -
stryk wrote:
With NAV you actually need this:
NAV Developers: Server Role "public", Database Roles "public" & "db_owner"
Sorry, forgot to mention:
I was talking about developers at allstryk wrote:Why do you have to assign that specific roles? Actually that should be just required for non-NAV logins accessing the NAV database ...
Could you explain that any furher? Why just required for non-NAV users?
The current situation is, that the user SUPER has the sever role sysadmin. (just a testsystem)
According to a new security situation i have to change that and after taking this role from the user, i had to give him this db roles.
Would there have been another way?0 -
[quote="RudiRutsche"
Could you explain that any furher? Why just required for non-NAV users?
The current situation is, that the user SUPER has the sever role sysadmin. (just a testsystem)
According to a new security situation i have to change that and after taking this role from the user, i had to give him this db roles.
Would there have been another way?[/quote]
OK, I see ... If you don't want to set the restrictions for that user in NAV, you couold do that by fiddling with the SQL roles, of course, I guess thats easier than doing it in NAV ...
The developers need the "db_owner" role to create/update/delete objects in the Database, e.g. when a NAV table is created, then also the SQL table needs to be created which is not possible with "public" only ...Jörg A. Stryk (MVP - Dynamics NAV)
NAV/SQL Performance Optimization & Troubleshooting
STRYK System Improvement
The Blog - The Book - The Tool0 -
stryk wrote:The developers need the "db_owner" role to create/update/delete objects in the Database, e.g. when a NAV table is created, then also the SQL table needs to be created which is not possible with "public" only ...
For creating, updating, deleting there is the role db_ddladmin!
In most databases a developer can work with the roles db_datawriter (for writing data), db_datareader (for reading data), db_ddladmin (For creating, updating, deleting tables) and db_securityadmin (needed for beeing able to change objects in the ms range (id < 50000).
But in SOME databases, I cannot connect without beeing member of db_owner.
So what I want to know ist, on what THIS depends on.0 -
Hmm ... actually it should work with either of these roles, here from the "Installation & System Management (SQL) PDF:To create or alter a database, the administrator must be a member of either the
sysadmin or the dbcreator SQL Server server roles. To create a database, the
administrator must also have public access to the model database. To alter a database,
the administrator can alternatively be a member of the db_ddladmin or db_owner
database roles for this database. For more information about security and SQL Server
roles, see Chapter 4, Security and User Setup.
andAs mentioned earlier, Dynamics NAV allows you to specify the level of security that you
want to implement in each database. You can choose between two different security
models:
• Standard Security
• Enhanced Security
The main difference between these two security models is the way in which they
synchronize the Dynamics NAV security system with SQL Server and the way that they
integrate the Dynamics NAV security system with Windows authentication.
To change the security model used in the database, you must be:
• A member of the sysadmin server role on SQL Server or be a member of the
db_owner database role for the database in question.
• Assigned the SUPER role in Dynamics NAV.
and mostlySQL Server Database Roles and Server Roles
The ability to perform certain activities within SQL Server requires that the users have
the appropriate server or database permissions or that the members of certain server
or database roles. Membership of these roles is not assigned automatically during the
synchronization process. They must be assigned by a SQL Server administrator.
The minimum requirements for carrying out these activities are listed in the following
table:
Dynamics NAV Activity Requires Membership of Server or Database Roles
Invoking the synchronization
process or modifying the
User table
sysadmin server role. Alternatively both a member of the
securityadmin server role and a member of the db_owner database
role for this database.
Creating a database sysadmin or dbcreator server role. Alternatively, the user must have
been granted the create database permission. The user must also
have public access to the model database.
Altering a database sysadmin or dbcreator server role. Alternatively a member of the
db_owner or db_ddladmin database role for this database.
Creating tables within a
database
sysadmin server role or be a member of the db_owner database role
for this database.
In order for a user to create or modify table definitions in Dynamics NAV, they must be
a member of the db_owner database role (the database creator is automatically a
member of this role). Membership of this database role must be assigned outside
Dynamics NAV, after the user has been created in one of the Dynamics NAV login
tables. These are the Windows Login table (accessed through the Windows Logins
window) and the User table (accessed through the Database Logins window). Adding
a user to a database role is done with a tool such as Microsoft Enterprise Manager.
Note that this user will then have all permissions within this database.
Any permissions required on individual tables or views in the database, for users who
are not db_owner users, must be manually granted to the users if the use of external
tools such as report writers is required outside Dynamics NAV.
and so on ... please check it out ...Jörg A. Stryk (MVP - Dynamics NAV)
NAV/SQL Performance Optimization & Troubleshooting
STRYK System Improvement
The Blog - The Book - The Tool0
Categories
- All Categories
- 73 General
- 73 Announcements
- 66.6K Microsoft Dynamics NAV
- 18.7K NAV Three Tier
- 38.4K NAV/Navision Classic Client
- 3.6K Navision Attain
- 2.4K Navision Financials
- 116 Navision DOS
- 851 Navision e-Commerce
- 1K NAV Tips & Tricks
- 772 NAV Dutch speaking only
- 617 NAV Courses, Exams & Certification
- 2K Microsoft Dynamics-Other
- 1.5K Dynamics AX
- 320 Dynamics CRM
- 111 Dynamics GP
- 10 Dynamics SL
- 1.5K Other
- 990 SQL General
- 383 SQL Performance
- 34 SQL Tips & Tricks
- 35 Design Patterns (General & Best Practices)
- 1 Architectural Patterns
- 10 Design Patterns
- 5 Implementation Patterns
- 53 3rd Party Products, Services & Events
- 1.6K General
- 1.1K General Chat
- 1.6K Website
- 83 Testing
- 1.2K Download section
- 23 How Tos section
- 252 Feedback
- 12 NAV TechDays 2013 Sessions
- 13 NAV TechDays 2012 Sessions