You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We have got a customer database that i have restored in my host system and connected it to a docker container and i am at a point that the database is hosted at my docker hosting OS on a MSSQLServer instance, the connection is working and the container is getting started and BC is accessible. After a long fight with getting the service working from the docker container to the database on the docker host OS, i am now facing a problem with creating users in BC. The problem in my opinion is, that the license does not allow any access from outside by just setting a new user to BC. The customer is using a AccessControlService instead of an regular Windows or UserPassword authentication, and this may could a problem to. To reproduce an own AccessControlService for a docker container is a lot of effort.
I have also tried a lot by editing the User Table with MS SQL: Tried to reduce the Users from Full to Limited Users by setting the License Typ from 0 to 1, hoping that the script notices that there are less than 10 full users. But it seems that the the information that there are no full user slots available is causing from something else and it is not checking whats in the BC User Table.
So the problem in quick:
User Authentication to BC doesnt work. I have tried to solve it by setting up new BCContainerBCUser but this command doesnt work. Using New-BCContainerWindowsUser is working and is setting up something but the authentication still isnt working. I have also tried to use a cronus license but then the error change from 10 to 2 full users. Still no authentication.
In a next stop i will try to clear the BC User Table by MSSQL completely to check if the license error still exist. Well knowing, that this operation is not recommendable for consistent data.
Questions:
Whats the difference between the New-BCContainerWindowsUser and New-BCContainerBCUser?
Where is the connection built up in New-BCContainerWindowsUser from the Windows Security ID field in BC to the docker intern Windows User?
Is New-BCContainerWindowsUser only creating an Windows User in the Docker Container? Where am i able to see which users are active in the docker windows container?
Is this a customer license specific problem?
In the Customer Environment the CredentialType is not a Windows or UserPassword, it is hosted with an AccessControlService. Does it affect anything on authenticating to BC in the Docker Container with Windows or UserPassword? How to adapt the AccessControlService to the Docker Container?
While the container is starting up the log says something of Health check returns False, restarting container . What is this health check and why it is not returning true?
Thank you for your help and any solution suggestions.
Scripts used to create container and cause the issue
seesharp54
changed the title
Custom Database in BCContainerHelper License amd authenticating Issue
Custom Database in BCContainerHelper License and authenticating Issue
Apr 15, 2024
On your questions
New-BcContainerWindowsUser is just creating another Windows user inside the container. Note that containers cannot be domain joined, but they do have their own local users. In order to run Windows Authentication towards a BC Container, we need to create the same Windows user in the container as you are running on the host. We also need to add that user to BC.
New-BcContainerBcUser creates a Business Central user using the cmdlet: New-NavServerUser.
It sounds like the problem simply is that there isn't enough licensed users in the license.
Not sure whether the CRONUS demo license could help you or maybe a partner license?
Otherwise you would have to remove users from the database, which I unfortunately don't know how to do.
We have got a customer database that i have restored in my host system and connected it to a docker container and i am at a point that the database is hosted at my docker hosting OS on a MSSQLServer instance, the connection is working and the container is getting started and BC is accessible. After a long fight with getting the service working from the docker container to the database on the docker host OS, i am now facing a problem with creating users in BC. The problem in my opinion is, that the license does not allow any access from outside by just setting a new user to BC. The customer is using a AccessControlService instead of an regular Windows or UserPassword authentication, and this may could a problem to. To reproduce an own AccessControlService for a docker container is a lot of effort.
I have also tried a lot by editing the User Table with MS SQL: Tried to reduce the Users from Full to Limited Users by setting the License Typ from 0 to 1, hoping that the script notices that there are less than 10 full users. But it seems that the the information that there are no full user slots available is causing from something else and it is not checking whats in the BC User Table.
So the problem in quick:
User Authentication to BC doesnt work. I have tried to solve it by setting up new BCContainerBCUser but this command doesnt work. Using New-BCContainerWindowsUser is working and is setting up something but the authentication still isnt working. I have also tried to use a cronus license but then the error change from 10 to 2 full users. Still no authentication.
In a next stop i will try to clear the BC User Table by MSSQL completely to check if the license error still exist. Well knowing, that this operation is not recommendable for consistent data.
Questions:
Where is the connection built up in New-BCContainerWindowsUser from the Windows Security ID field in BC to the docker intern Windows User?
Thank you for your help and any solution suggestions.
Scripts used to create container and cause the issue
Full output of scripts
The text was updated successfully, but these errors were encountered: