Problems with integrated accounts


Author
Message
Juan Carlos Pazos
Juan Carlos Pazos
StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)
Group: Forum Members
Posts: 144, Visits: 227
Hi

This is the second time I put this, last was not solution or answer. Please I really need the integrated accounts works because I can not access to the Security editor of the application.

I'm using the last beta version of SF and RBS, when installed I let update the SQL tables. And I add some tables later and use the DDT to deploy and update my database.

The problem occurs only after update to the most recent version. If I use the "admin" integrated account I can use all the application excep the Security Editor.

I have this for enter as default admin user in AppMain.vb

'-- Set the administrative and security maintenance usernames and passwords

SecurityBasics.AdministratorUserName = "admin"

SecurityBasics.AdministratorPassword = "admin" & DateTime.Now.Day.ToString() '-- set the admin password so that it changes from day to day

SecurityBasics.AdministratorUserPk = -1

SecurityBasics.SecurityMaintenanceUserName = "seguridad"

SecurityBasics.SecurityMaintenancePassword = "seguridad" & DateTime.Now.Day.ToString() '-- set the admin password so that it changes from day to day

SecurityBasics.SecurityMaintenanceUserPk = -2

Previous to this release I could enter as admin and go to the Security editor to manage the security of the application. Now if enter as "admin" the code breaks here:

#Region " Data Transformation Functions "

''' <summary>

''' Converts the byte array into an encrypted or decrypted byte array.

''' If the passed data was encrypted, it will be decrypted and vice-versa.

''' </summary>

''' <param name="input"></param>

''' <param name="CryptoTransform"></param>

''' <returns></returns>

''' <remarks></remarks>

Private Function Transform(ByVal input() As Byte, ByVal CryptoTransform As ICryptoTransform) As Byte()

' Create the necessary streams

Dim memStream As MemoryStream = New MemoryStream

Dim cryptStream As CryptoStream = New CryptoStream(memStream, CryptoTransform, CryptoStreamMode.Write)

' Transform the bytes as requested

cryptStream.Write(input, 0, input.Length)

cryptStream.FlushFinalBlock() '-- HERE

The code I use all time to show the security editor is this (previous the update works all time)

Dim loForm As SecurityDialog

If SecurityBasics.CurrentUser.GetPermission("Application Security").Action = PermissionAction.Grant Then

loForm = New SecurityDialog()

loForm.ShowDialog()

Else

MessageForm.ShowMessage("Acceso denegado", "No tiene permitido el acceso al editor de seguridad.", "", MessageFunction.OK, MessagingIcon.Forbidden, MessagingSounds.Warning)

End If

And if try to enter with the "seguridad" user, I get this error:

The CurrentRow for table '[dbo].[SFSUsers]' could not be evaluated because the CurrentRowIndex is out of range.  Business object record count: 0.  CurrentRowIndex: -1.

I dind not change anything in my security functions or users permissions.

I read the some changes were made to security, but I can't found anything that point to the problem I'm having now.

Regards

Smile Everything is possible, just keep trying...

Trent Taylor
Trent Taylor
StrataFrame Developer (8.5K reputation)StrataFrame Developer (8.5K reputation)StrataFrame Developer (8.5K reputation)StrataFrame Developer (8.5K reputation)StrataFrame Developer (8.5K reputation)StrataFrame Developer (8.5K reputation)StrataFrame Developer (8.5K reputation)StrataFrame Developer (8.5K reputation)StrataFrame Developer (8.5K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 6.9K
The problem that you are having seems a little odd.  Im am going to answer under the understanding that you mentioned that when you login with the Admin you can get to anything and when you log in with the security user you get the error.  There are a couple of problems in your statement that don't make sense.

  1. If you login as an Admin, you should be able to get to anything, including security.
  2. You never mentioned trying to login with a user created from within security.  Have you done this?  Does it work?  Does it cause an error?
  3. Do you have a user with the same name as your hard coded user names?
  4. Have you tried this same logic in a brand new SF app with all of the defaults to see if it is reproducable outside of your application environment?

I can tell you this much, nothing in this regard has changed.  There have been some structure changes made between releases to account for a new field or two (i.e. Display Name).  So you will want to verify that as well. 

Juan Carlos Pazos
Juan Carlos Pazos
StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)
Group: Forum Members
Posts: 144, Visits: 227
Hi Trent

  1. If you login as an Admin, you should be able to get to anything, including security.
  2. You never mentioned trying to login with a user created from within security.  Have you done this?  Does it work?  Does it cause an error?
  3. Do you have a user with the same name as your hard coded user names?
  4. Have you tried this same logic in a brand new SF app with all of the defaults to see if it is reproducable outside of your application environment?

1. I can login with the defaul administrator and enter and use every part of the application but if I try to enter to the security editor gives me an error, the shown in the first mail. This is the only one function I can not enter woth the integrated admin.

2. As I'm deloping and application, and have only two users, none have access to security, reason is because I always use the default admin account to change permissons and test with the only two users I have.

3) No, the names are completly different

4) No yet.

The integrated security account does not enter to the application, it shows an error, that I alredy post.

Can you tell me which fields are new, I can review the values in the tables to see if they have those fields.

Regards

Smile Everything is possible, just keep trying...

Juan Carlos Pazos
Juan Carlos Pazos
StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)StrataFrame User (190 reputation)
Group: Forum Members
Posts: 144, Visits: 227
Hi Trent

75% solved. After working on this I have access with the build-in administrator account to the security dialog.

Also I grant a user persission to access the security dialog and is working.

Also have access to the application with the build-in security account, but... This user have not access to the security dialog.

Do you have some ideas of what can prevent this user to have access there?

Now I'm using a simple access:

Using loDialog As New SecurityDialog(False, False)

loDialog.ShowDialog()

End Using

Regards

Smile Everything is possible, just keep trying...

James E Jernigan
James E Jernigan
StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)
Group: Forum Members
Posts: 16, Visits: 101
I am having the same problem with the newest version of StrataFrame that I have installed ... the Administrator user can run all parts of the application and access the security dialog but the Security Maintenance user can only run the application parts but gets an "Access Denied" message when I try to access the security dialog through the same code that works for the Administrator user ... I have the call to the security dialog setup on a button click for testing.
James E Jernigan
James E Jernigan
StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)
Group: Forum Members
Posts: 16, Visits: 101
BTW:

I am using the same code as Juan listed in his last posting, only using the C# version to create the instance of the security dialog and then call the show dialog method.  This is also the same code that is shown in the Strataframe documentation about security and integrated users on how to call the security dialog.  I have also tried it without wrapping the code in the "Using" syntax.

The documentation states that the Security Maintenance integrated user is designed for "bootstrapping" the process of setting up users for an application so that the users do not have to be predefined at design time and distributed with the application.  Am I missing a step that is required to activate this functionality?  Does the Security Maintenance integrated user id and password need to be defined in the security data before distribution?  The application authenticates the integrated Security Maintenance user without a problem but will only allow the integrated "Administrator" user to access the security dialog ....

Help Please ......

Greg McGuffey
Greg McGuffey
Strategic Support Team Member (2.7K reputation)
Group: Forum Members
Posts: 2K, Visits: 6.6K
Did you setup the security user in the InitApplication event handler in program.cs? You need to set the user name, the password and it's ID (usually -2).
James E Jernigan
James E Jernigan
StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)
Group: Forum Members
Posts: 16, Visits: 101
Yes, the program.cs file already contained code defining the integrated Administrator user and the Maintenance user.



This code was already in place in the program.cs file when I started the solution by picking the "Strataframe Windows Application with Security" template to add the first project to the solution. I did change the user id and password but the "SecurityMaintenanceUserPk" is still -2 in the code.



As stated previously, the application will recognize this id and password at the login form level and runs the application okay after the login of the integrated Maintenance user but if you create an instance of the security dialog such as in the sample code and call it lodialog for example, and then call "lodialog.showdialog()" in an event handler for a button click, you get an access denied pop-up message just like if any other non-administrator tried to run the security dialog. If you run the same code but have logged in as the integrated Administrator user, it works okay and the security dialog loads as expected.
Greg McGuffey
Greg McGuffey
Strategic Support Team Member (2.7K reputation)
Group: Forum Members
Posts: 2K, Visits: 6.6K
Could you post a sample app that demonstrates this?
James E Jernigan
James E Jernigan
StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)StrataFrame Beginner (42 reputation)
Group: Forum Members
Posts: 16, Visits: 101
Yes, I have tested this with just a simple solution that contains 1 Windows project that contains 1 form that contains 1 button.



This is all created by default by the method I described in my previous post. Tell me which files I need to post for you ... do I need to zip up the whole solution subdirectory structure? I am using Strataframe version 1.7.0.2 for this .... Tongue
GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Similar Topics

Reading This Topic

Login

Explore
Messages
Mentions
Search