Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

 

 

Code Block
languagecpp
themeConfluence
EdmiError edmiRemoteCreateUser(SdaiServerContext serverContextId,    
                               SdaiString        userName,               
                               SdaiUser          *userId,                      
                               SdaiInvocationId  *edmiInvocationId);




Creates a new EDMuser in a remote EDMdatabase

...

.

...

EDMuser names must be unique within an EDMdatabase

...

. It may consist of letters, digits and hyphens. The first character must be a letter. EDMuser names are case insensitive.

...

The edmiRemoteCreateDatabase function will

...

implicitly create the EDMgroup named 'sdai-group' and the EDMusers 'superuser' and 'sdai-user'. The two users will be members of 'sdai-group'.

...

  Only the superuser may use this function.

Related functions: edmiRemoteDeleteUser, edmiRemoteUserToGroup, edmiRemoteGetUser, edmiRemoteChangePassword, edmiRemoteDefinePassword.
Header:
#include "sdai.h"
Prototype:
EdmiError edmiRemoteCreateUser(SdaiServerContext serverContextId,                               SdaiString        userName,                               SdaiUser          *userId,                               SdaiInvocationId  *edmiInvocationId);
 
Arguments: 

Arguments

...

TypeNameComment
 SdaiServerContext

serverContextId

Context identification, from edmiDefineServerContext

 SdaiString

userName

The name of the EDMuser to create in the remote _EDMdatabase{_}remote  EDMdatabase . EDMuser names are case insensitive. see  EDMuserName

 SdaiUser

userId

A variable that will receive the numeric userId that uniquely identifies the EDMuser in the EDMdatabase.

 

edmiInvocationId

Currently not used.

Return Value

...

Insert excerpt
US:_r_EDMInterface
US:_r_EDMInterface
nopaneltrue

 

Options

...

  

OptionComment
Option nameComment

 

Example

...

 

Code Block
languagecpp
 

 

See also

Filter by label (Content by label)
showLabelsfalse
showSpacefalse
cqllabel = "model" and parent = "6062220"

 

 

 

Returns:
A completion code of datatype EdmiError is the returned function value. The completion code has the following values:
Completion code = 0 : Operation successfully performed.
Completion code != 0: Error in operation. Completion code is an _EDMinterface_ error code. Use edmiGetErrorText to get the error text corresponding to the error code.
Example:
EdmiError rstat;
SdaiServerContext suContext;
SdaiUser userId;
SdaiGroup groupId;
 
/* Define Remote Server Context
for the superuser */ 
rstat = edmiDefineServerContext("SuperUserContext",
"superuser", NULL, "dbName", 
"TCP", "9090", "MyServerHost", 
NULL, NULL, NULL, NULL, NULL, &suContext); 
 
/* First, change the superuser password
from the factory setting <databaseName> 
to the somewhat more complicated 'xfx56kl9' */ 
rstat = edmiRemoteDefinePassword(suContext, "xfx56kl9", NULL);
 
/* The new password makes the current context obsolete. */
rstat = edmiDeleteServerContext(suContext);
 
/* A new context must be created
to reflect the change in password */ 
rstat = edmiDefineServerContext("SuperUserContext",
"superuser", NULL, "xfx56kl9",
"TCP", "9090", "MyServerHost",
NULL, NULL, NULL, NULL, NULL, &suContext); 
 
/* Check if 'Lucy' exists as user */
rstat = edmiRemoteGetUser(suContext, "Lucy", &userId, NULL);
if (rstat = edmiENOUSER) {
rstat = edmiRemoteCreateUser(suContext, "Lucy", &userId, NULL); 
}
 
/* Check if 'Guest' exists as user */
rstat = edmiRemoteGetGroup(suContext, "Guest", &groupId, NULL);
if (rstat = edmiENOGROUP) {
rstat = edmiRemoteCreateGroup(suContext, "Guest", &groupId, NULL); 
}
 
/* Put 'Lucy' in the 'Guest' group */
rstat = edmiRemoteUserToGroup(suContext, groupId, userId, NULL);
 
/* Change Lucys password from the
default 'Lucy' to 'ddf54y' */ 
rstat = edmiRemoteChangePassword(suContext, userId, "ddf54y", NULL);
. . .