usr/src/apis/usermgr.xml
changeset 847 a8e124b894b8
parent 842 abc3d63bd4da
child 853 e2d9352738a7
equal deleted inserted replaced
846:0a2af4721353 847:a8e124b894b8
    21 
    21 
    22  CDDL HEADER END
    22  CDDL HEADER END
    23 -->
    23 -->
    24 
    24 
    25 <interface xmlns="http://xmlns.oracle.com/radadr" 
    25 <interface xmlns="http://xmlns.oracle.com/radadr" 
    26   name="com.oracle.solaris.vp.panels.usermgr">
    26   name="com.oracle.solaris.rad.usermgr">
    27 
    27 
    28 	<struct name="Group">
    28 	<struct name="Group">
    29 		<field type="string" name="groupName"/>
    29 		<summary>
    30 		<field type="uinteger" name="groupID"/>
    30 			describes a Solaris group
       
    31 		</summary>
       
    32 		<doc>
       
    33 			Fully describes a Solaris group, contains
       
    34 			group name, group id, group members.
       
    35 		</doc>
       
    36 		<field type="string" name="groupName">
       
    37 			<summary> Specifies the group name.</summary>
       
    38 		</field>
       
    39 		<field type="uinteger" name="groupID">
       
    40 			<summary> Specifies the Gid of the group.</summary>
       
    41 		</field>
    31 		<field name="groupMembers">
    42 		<field name="groupMembers">
       
    43 			<summary> Specifies the members of the group.</summary>
    32 			<list type="string"/>
    44 			<list type="string"/>
    33 		</field>
    45 		</field>
    34 	</struct>
    46 	</struct>
    35 
    47 
    36 	<struct name="User">
    48 	<struct name="User">
    37 		<field type="string" name="username" nullable="false"/>
    49 		<summary>
    38 		<field type="uinteger" name="userID" />
    50 			describes a Solaris user
    39 		<field type="uinteger" name="groupID" />
    51 		</summary>
    40 		<field type="string" name="description" nullable="true"/>
    52 		<doc>
    41 		<field type="string" name="homeDirectory" nullable="true"/>
    53 			Fully describes a Solaris user, contains
    42 		<field type="string" name="defaultShell" nullable="true"/>
    54 			account, home directory and security attributes
       
    55 			associated with a user. See man passwd(4),
       
    56 			shadow(4), userattr(4) for more info on fields.
       
    57 		</doc>
       
    58 		<field type="string" name="username" nullable="false">
       
    59 			<summary> username for the account. </summary>
       
    60 		</field>
       
    61 		<field type="uinteger" name="userID">
       
    62 			<summary> UID for the account. </summary>
       
    63 		</field>
       
    64 		<field type="uinteger" name="groupID">
       
    65 			<summary> GID for the account. </summary>
       
    66 		</field>
       
    67 		<field type="string" name="description" nullable="true">
       
    68 			<summary> gecos info for the account. </summary>
       
    69 		</field>
       
    70 		<field type="string" name="homeDirectory" nullable="true">
       
    71 			<summary> homedirectory location for the account. </summary>
       
    72 		</field>
       
    73 		<field type="string" name="defaultShell" nullable="true">
       
    74 			<summary> default shell for the account. </summary>
       
    75 		</field>
       
    76 		<field type="integer" name="inactive">
       
    77 			<summary> Number of inactivity days allowed for the account.
       
    78 			</summary>
       
    79 		</field>
       
    80 		<field type="integer" name="min">
       
    81 			<summary> Minimum number of days between password changes
       
    82 				 for the account.
       
    83 			</summary>
       
    84 		</field>
       
    85 		<field type="integer" name="max"> 
       
    86 			<summary> Maximum cemunber of days the password is valid for
       
    87 				 the account.
       
    88 			</summary>
       
    89 		</field>
       
    90 		<field type="integer" name="warn">
       
    91 			<summary> Number of days before password expires the user 
       
    92 				 is warned.
       
    93 			</summary>
       
    94 		</field>
       
    95 		<field type="string" name="expire" nullable="true">
       
    96 			<summary> The date after which login will not be allowed for
       
    97 				 the account. The date format is %y-%m-%d %H:%M:%S.
       
    98 			</summary>
       
    99 		</field>
       
   100 		<field type="string" name="lockAfterRetries" nullable="true">
       
   101 			<summary> Specifies whether the account is locked
       
   102 				 after failed logins execeeds the allowable
       
   103 				 limit.
       
   104 			</summary>
       
   105 		</field>
       
   106 		<field type="string" name="alwaysAuditFlags" nullable="true">
       
   107 			<summary> Specifies per-user always audit pre-selection 
       
   108 				flags.
       
   109 			</summary>
       
   110 		</field>
       
   111 		<field type="string" name="neverAuditFlags" nullable="true">
       
   112 			<summary> Specifies per-user never-audit
       
   113 				 pre-selection flags.
       
   114 			</summary>
       
   115 		</field>
       
   116 		<field type="string" name="type" nullable="true">
       
   117 			<summary> specifies whether account is role or user. </summary>
       
   118 		</field>
       
   119 		<field type="string" name="defaultProj" nullable="true">
       
   120 			<summary> specifies the default project for the account. </summary>
       
   121 		</field>
       
   122 		<field type="string" name="clearance" nullable="true">
       
   123 			<summary> Specifies the max label at which the user can
       
   124 				 operate.
       
   125 		 	</summary>
       
   126 		</field>
       
   127 		<field type="string" name="minLabel" nullable="true">
       
   128 			<summary> Specifies the min labelthat the user can login .</summary>
       
   129 		</field>
       
   130 		<field type="string" name="roleAuth" nullable="true">
       
   131 			<summary> Specifies whether the account user role or user
       
   132 				 password for role authentication.
       
   133 			</summary>
       
   134 		</field>
       
   135 		<field type="string" name="idleCmd" nullable="true">
       
   136 			<summary> Specifies when the desktop session for the user gets
       
   137 				locked.
       
   138 			 </summary>
       
   139 		</field>
       
   140 		<field type="string" name="idleTime" nullable="true">
       
   141 			<summary> Specifies the idle time before the idlecmd is 
       
   142 				 executed.
       
   143 			</summary>
       
   144 		</field>
       
   145 		<field type="string" name="accountStatus" nullable="true">
       
   146 			<summary> Specifies the status of the account.</summary>
       
   147 		</field>
       
   148 		<field name="roles" nullable="true">
       
   149 			<summary> Specifies the roles that have been assigned to the
       
   150 				 account.
       
   151 			</summary>
       
   152 			<list type="string"/>
       
   153 		</field>
       
   154 		<field name="profiles" nullable="true">
       
   155 			<summary> Specifies the profiles that have been assigned to the
       
   156 				 account.
       
   157 			</summary>
       
   158 			<list type="string"/>
       
   159 		</field>
       
   160 		<field name="auths" nullable="true">
       
   161 			<summary> Specifies the authorizations that have been assigned
       
   162 				 to the account.
       
   163 			</summary>
       
   164 			<list type="string"/>
       
   165 		</field>
       
   166 		<field name="defaultPriv" nullable="true">
       
   167 			<summary> Specifies the default set of privileges assigned to
       
   168 				 user at login.
       
   169 			</summary>
       
   170 			<list type="string"/>
       
   171 		</field>
       
   172 		<field name="limitPriv" nullable="true">
       
   173 			<summary> Specifies the maximum  set of privileges the user or
       
   174 				 process started by the user can obtain.
       
   175 			</summary>
       
   176 			<list type="string"/>
       
   177 		</field>
       
   178 		<field name="groups" nullable="true">
       
   179 			<summary> Specifies the supplemental groups that have been
       
   180 				 assigned to the account.
       
   181 			</summary>
       
   182 			<list type="string"/>
       
   183 		</field>
    43 	</struct>
   184 	</struct>
    44 
   185 
       
   186 	<struct name="UserChangeFields">
       
   187 		<summary>
       
   188 			Keeps track of all the fields that have been
       
   189 			changed in the user object.
       
   190 		</summary>
       
   191 		<doc>
       
   192 			Keeps track of all the fields that have been
       
   193 			changed in the user object. For every field
       
   194 			that has been changed in the User object the
       
   195 			respective changeField will be set to true.
       
   196 		</doc>
       
   197 		<field type="boolean" name="gidChanged"/>
       
   198 		<field type="boolean" name="descChanged"/>
       
   199 		<field type="boolean" name="homedirChanged"/>
       
   200 		<field type="boolean" name="defShellChanged"/>
       
   201 		<field type="boolean" name="profilesChanged"/>
       
   202 		<field type="boolean" name="rolesChanged"/>
       
   203 		<field type="boolean" name="authsChanged"/>
       
   204 		<field type="boolean" name="limitPrivChanged"/>
       
   205 		<field type="boolean" name="groupsChanged"/>
       
   206 		<field type="boolean" name="lockAfterRetriesChanged"/>
       
   207 		<field type="boolean" name="alwaysAuditChanged"/>
       
   208 		<field type="boolean" name="neverAuditChanged"/>
       
   209 		<field type="boolean" name="typeChanged"/>
       
   210 		<field type="boolean" name="defaultProjChanged"/>
       
   211 		<field type="boolean" name="minLabelChanged"/>
       
   212 		<field type="boolean" name="roleAuthChanged"/>
       
   213 		<field type="boolean" name="idleCmdChanged"/>
       
   214 		<field type="boolean" name="idleTimeChanged"/>
       
   215 		<field type="boolean" name="expireChanged"/>
       
   216 		<field type="boolean" name="minChanged"/>
       
   217 		<field type="boolean" name="maxChanged"/>
       
   218 		<field type="boolean" name="warnChanged"/>
       
   219 		<field type="boolean" name="uidChanged"/>
       
   220 	</struct>
       
   221 
    45 	<enum name="UserMgrErrorType">
   222 	<enum name="UserMgrErrorType">
       
   223 		<summary>User Manager api error types</summary>
    46 		<value name="INVALIDDATA"/>
   224 		<value name="INVALIDDATA"/>
    47 		<value name="USEREXISTS"/>
   225 		<value name="USEREXISTS"/>
    48 		<value name="PERMDENIED"/>
   226 		<value name="PERMDENIED"/>
    49 		<value name="READERROR"/>
   227 		<value name="READERROR"/>
    50 		<value name="LASTADMIN"/>
   228 		<value name="LASTADMIN"/>
    51 		<value name="ROOTADMIN"/>
   229 		<value name="ROOTADMIN"/>
    52 		<value name="PASSERROR"/>
   230 		<value name="PASSERROR"/>
    53 	</enum>
   231 	</enum>
    54 
   232 
       
   233 	<enum name="ScopeType">
       
   234 		<summary>Name service scope types</summary>
       
   235 		<value name="FILES"/>
       
   236 		<value name="LDAP"/>
       
   237 	</enum>
       
   238 
    55 	<struct name="UserMgrError">
   239 	<struct name="UserMgrError">
    56 		<field typeref="UserMgrErrorType" name="errorCode"/>
   240 		<field typeref="UserMgrErrorType" name="errorCode"/>
    57 	</struct>
   241 	</struct>
    58 
   242 
    59 	<enum name="UserType">
   243 	<enum name="UserType">
    60 		<value name="NORMAL"/>
   244 		<value name="NORMAL"/>
    61 		<value name="ROLE"/>
   245 		<value name="ROLE"/>
    62 	</enum>
   246 	</enum>
    63 
   247 
    64 	<api name="UserMgr">
   248 	<api name="UserMgr">
    65 		<version major="1" minor="0" stability="private"/>
   249 		<summary>
       
   250 			Set of operations that can be performed on
       
   251 			users and roles.
       
   252 		</summary>
       
   253 		<version major="0" minor="1" stability="private"/>
    66 
   254 
    67 		<property name="users" access="ro">
   255 		<property name="users" access="ro">
       
   256 			<summary>
       
   257 				Lists users.
       
   258 			</summary>
       
   259 			<doc>
       
   260 				Lists the users present in the selected
       
   261 				scope based on the filter options.
       
   262 			</doc>
    68 			<list typeref="User"/>
   263 			<list typeref="User"/>
    69 			<error typeref="UserMgrError"/>
   264 			<error typeref="UserMgrError">
       
   265 				<doc>
       
   266 			            <list>
       
   267 					<item>
       
   268 					    <code>READERROR</code>  - when unable to read user after
       
   269              				</item> 
       
   270 				    </list>
       
   271 				</doc>
       
   272 			</error>
    70 		</property>
   273 		</property>
    71 
   274 
    72 		<property name="groups" access="ro">
   275 		<property name="groups" access="ro">
       
   276 			<summary>
       
   277 				Lists groups.
       
   278 			</summary>
       
   279 			<doc>
       
   280 				Lists the groups present in the selected
       
   281 				scope.
       
   282 			</doc>
    73 			<list typeref="Group"/>
   283 			<list typeref="Group"/>
    74 			<error typeref="UserMgrError"/>
   284 			<error typeref="UserMgrError">
       
   285 				<doc>
       
   286 			            <list>
       
   287 					<item>
       
   288 					    <code>READERROR</code>  - when unable to read the groups database.
       
   289              				</item> 
       
   290 				    </list>
       
   291 				</doc>
       
   292 			</error>
    75 		</property>
   293 		</property>
    76 
   294 
    77 		<property name="shells" access="ro">
   295 		<property name="shells" access="ro">
    78 			<list type="string"/>
   296 			<summary>
    79 			<error typeref="UserMgrError"/>
   297 				Lists shells.
       
   298 			</summary>
       
   299 			<doc>
       
   300 				Lists the set of available shells
       
   301 				that can be set as default shell for users.
       
   302 			</doc>
       
   303 			<list type="string"/>
       
   304 			<error typeref="UserMgrError">
       
   305 				<doc>
       
   306 			            <list>
       
   307 					<item>
       
   308 					    <code>READERROR</code>  - when unable to read the default shells.
       
   309              				</item> 
       
   310 				    </list>
       
   311 				</doc>
       
   312 			</error>
    80 		</property>
   313 		</property>
    81 
   314 
    82 		<property name="defaultUser" typeref="User" access="ro">
   315 		<property name="defaultUser" typeref="User" access="ro">
    83 			<error typeref="UserMgrError"/>
   316 			<summary>
    84 		</property>
   317 				Lists user defaults.
       
   318 			</summary>
       
   319 			<doc>
       
   320 				Lists the default values for groups, basedir,
       
   321 				project, shell, skel, inactive, expire,
       
   322 				auths, profiles, roles, limitPriv,
       
   323 				defaultPriv, lockAfterRetries used  for
       
   324 				creation of users and roles.
       
   325 			</doc>
       
   326 			<error typeref="UserMgrError">
       
   327 				<doc>
       
   328 			            <list>
       
   329 					<item>
       
   330 					    <code>READERROR</code>  - when unable to read default user properties.
       
   331              				</item> 
       
   332 				    </list>
       
   333 				</doc>
       
   334 			</error>
       
   335 		</property>
       
   336 
       
   337 		<property name="scopes" access="ro">
       
   338 			<summary>
       
   339 				Lists scopes.
       
   340 			</summary>
       
   341 			<doc>
       
   342 				Lists the set of name service repositories
       
   343 				that can be administered.
       
   344 			</doc>
       
   345 			<list type="string"/>
       
   346 			<error typeref="UserMgrError">
       
   347 				<doc>
       
   348 			            <list>
       
   349 					<item>
       
   350 					    <code>READERROR</code>  - when unable to read the name services that can be managed.
       
   351              				</item> 
       
   352 				    </list>
       
   353 				</doc>
       
   354 			</error>
       
   355 		</property>
       
   356 
       
   357 
       
   358 		<property name="roles" access="ro">
       
   359 			<summary>
       
   360 				Lists assigned roles.
       
   361 			</summary>
       
   362 			<doc>
       
   363 				Lists the roles assigned to a user.
       
   364 			</doc>
       
   365 			<list type="string"/>
       
   366 			<error typeref="UserMgrError">
       
   367 				<doc>
       
   368 			            <list>
       
   369 					<item>
       
   370 					    <code>READERROR</code>  - when unable to read user roles
       
   371              				</item> 
       
   372 				    </list>
       
   373 				</doc>
       
   374 			</error>
       
   375 		</property>
       
   376 
       
   377 		<property name="profiles" access="ro">
       
   378 			<summary>
       
   379 				Lists assigned profiles.
       
   380 			</summary>
       
   381 			<doc>
       
   382 				Lists the profiles assigned to a user.
       
   383 			</doc>
       
   384 			<list type="string"/>
       
   385 			<error typeref="UserMgrError">
       
   386 				<doc>
       
   387 			            <list>
       
   388 					<item>
       
   389 					    <code>READERROR</code>  - when unable to read user profiles.
       
   390              				</item> 
       
   391 				    </list>
       
   392 				</doc>
       
   393 			</error>
       
   394 		</property>
       
   395 
       
   396 		<property name="auths" access="ro">
       
   397 			<summary>
       
   398 				Lists assigned authorizations.
       
   399 			</summary>
       
   400 			<doc>
       
   401 				Lists the authorizations assigned to a user.
       
   402 			</doc>
       
   403 			<list type="string"/>
       
   404 			<error typeref="UserMgrError">
       
   405 				<doc>
       
   406 			            <list>
       
   407 					<item>
       
   408 					    <code>READERROR</code>  - when unable to read user authorizations.
       
   409              				</item> 
       
   410 				    </list>
       
   411 				</doc>
       
   412 			</error>
       
   413 		</property>
       
   414 
       
   415 		<property name="defaultPrivs" access="ro">
       
   416 			<summary>
       
   417 				Lists default privileges.
       
   418 			</summary>
       
   419 			<doc>
       
   420 				Lists the default privileges assigned to a user.
       
   421 			</doc>
       
   422 			<list type="string"/>
       
   423 			<error typeref="UserMgrError">
       
   424 				<doc>
       
   425 			            <list>
       
   426 					<item>
       
   427 					    <code>READERROR</code>  - when unable to read user's default privileges.
       
   428              				</item> 
       
   429 				    </list>
       
   430 				</doc>
       
   431 			</error>
       
   432 		</property>
       
   433 
       
   434 		<property name="limitPrivs" access="ro">
       
   435 			<summary>
       
   436 				Lists limit privileges.
       
   437 			</summary>
       
   438 			<doc>
       
   439 				Lists the limit privileges assigned to a user.
       
   440 			</doc>
       
   441 			<list type="string"/>
       
   442 			<error typeref="UserMgrError">
       
   443 				<doc>
       
   444 			            <list>
       
   445 					<item>
       
   446 					    <code>READERROR</code>  - when unable to read user's limit privileges.
       
   447              				</item> 
       
   448 				    </list>
       
   449 				</doc>
       
   450 			</error>
       
   451 		</property>
       
   452 
       
   453 		<property name="supplGroups" access="ro">
       
   454 			<summary>
       
   455 				Lists supplemental groups.
       
   456 			</summary>
       
   457 			<doc>
       
   458 				Lists the supplemental groups that the user
       
   459 				is a member of.
       
   460 			</doc>
       
   461 			<list type="string"/>
       
   462 			<error typeref="UserMgrError">
       
   463 				<doc>
       
   464 			            <list>
       
   465 					<item>
       
   466 					    <code>READERROR</code>  - when unable to read user's supplemental groups.
       
   467              				</item> 
       
   468 				    </list>
       
   469 				</doc>
       
   470 			</error>
       
   471 		</property>
       
   472 
       
   473 		<property name="auditClasses" access="ro">
       
   474 			<summary>
       
   475 				Lists Assigned Audit Classes.
       
   476 			</summary>
       
   477 			<doc>
       
   478 				Lists the audit classes that are assigned to 
       
   479 				the user.
       
   480 			</doc>
       
   481 			<list type="string"/>
       
   482 			<error typeref="UserMgrError">
       
   483 				<doc>
       
   484 			            <list>
       
   485 					<item>
       
   486 					    <code>READERROR</code>  - when unable to read user's assigned audit classes.
       
   487              				</item> 
       
   488 				    </list>
       
   489 				</doc>
       
   490 			</error>
       
   491 		</property>
       
   492 
       
   493 		<property name="pamUserConfFiles" access="ro">
       
   494 			<summary>
       
   495 				Lists users PAM configuration files.
       
   496 			</summary>
       
   497 			<doc>
       
   498 				Lists the per-user PAM configuration files.
       
   499 			</doc>
       
   500 			<list type="string"/>
       
   501 			<error typeref="UserMgrError">
       
   502 				<doc>
       
   503 			            <list>
       
   504 					<item>
       
   505 					    <code>READERROR</code>  - when unable to read user specific PAM configuration files.
       
   506              				</item> 
       
   507 				    </list>
       
   508 				</doc>
       
   509 			</error>
       
   510 		</property>
       
   511 
       
   512 		<method name="getUser">
       
   513 			<summary>
       
   514 				gets User information for a given username.
       
   515 			</summary>
       
   516 			<doc>
       
   517 				Gets the user information for a given username from 
       
   518 				the name service repository based on the filter
       
   519 				options.
       
   520 			</doc>
       
   521 			<result typeref="User"/>
       
   522 			<error typeref="UserMgrError">
       
   523 				<doc>
       
   524 			            <list>
       
   525 					<item>
       
   526 					    <code>READERROR</code>  - when unable to read user
       
   527              				</item> 
       
   528 				    </list>
       
   529 				</doc>
       
   530 			</error>
       
   531 			<argument type="string" name="username">
       
   532 				<summary> Specifies the username for which the
       
   533 					account information is to be retrieved.
       
   534 				</summary>
       
   535 			</argument>	
       
   536 		</method>
    85 
   537 
    86 		<method name="addUser">
   538 		<method name="addUser">
       
   539 			<summary>
       
   540 				Add user or role.
       
   541 			</summary>
       
   542 			<doc>
       
   543 				Adds a user or role to the selected name
       
   544 				service repository based on the filter
       
   545 				options. Applies the properties set in 
       
   546 				the user object as the account, password,
       
   547 				security attributes.
       
   548 				Sets INVALIDDATA error when arguments are not valid.
       
   549 				Sets PASSERROR error when password update fails.
       
   550 				Sets READERROR error when unable to read user after
       
   551 				successful addition of new user.
       
   552 				Sets USEREXISTS error user already exists with same
       
   553 				username.
       
   554 			</doc>
    87 			<result typeref="User"/>
   555 			<result typeref="User"/>
    88 			<error typeref="UserMgrError"/>
   556 			<error typeref="UserMgrError">
    89 			<argument typeref="User" name="user"/>
   557 				<doc>
    90 			<argument type="secret" name="password"/>
   558 			            <list>
       
   559 					<item>
       
   560 					    <code>INVALIDDATA</code>  - when arguments are not valid.
       
   561              				</item> 
       
   562 					<item>
       
   563 					    <code>INVALIDDATA</code>  - when arguments are not valid.
       
   564              				</item> 
       
   565 					<item>
       
   566 					    <code>READERROR</code>  - when unable to read user after adding new user.
       
   567              				</item> 
       
   568 				    </list>
       
   569 				</doc>
       
   570 			</error>
       
   571 			<argument typeref="User" name="user">
       
   572 				<summary> user object which contains attributes of new
       
   573 					user account to be created.
       
   574 				</summary>
       
   575 			</argument>	
       
   576 			<argument type="secret" name="password">
       
   577 				<summary> password to be set for the new user account.
       
   578 				</summary>
       
   579 			</argument>
    91 		</method>
   580 		</method>
    92 
   581 
    93 		<method name="modifyUser">
   582 		<method name="modifyUser">
       
   583 			<summary>
       
   584 				Modify user or role.
       
   585 			</summary>
       
   586 			<doc>
       
   587 				Modifies users or roles present in the selected
       
   588 				scope based on the filter options.
       
   589 				Applies the changed fields in the user object
       
   590 				to the user or role attributes.	
       
   591 				Sets INVALIDDATA error when arguments are not valid.
       
   592 				Sets PASSERROR error when password update fails.
       
   593 				Sets READERROR error when unable to read user after
       
   594 				successful modification of user.
       
   595 			</doc>
    94 			<result typeref="User"/>
   596 			<result typeref="User"/>
    95 			<error typeref="UserMgrError"/>
   597 			<error typeref="UserMgrError">
    96 			<argument typeref="User" name="user"/>
   598 				<doc>
    97 			<argument type="secret" name="password"
   599 			            <list>
    98 			    nullable="true"/>
   600 					<item>
       
   601 					    <code>INVALIDDATA</code>  - when arguments are not valid.
       
   602              				</item> 
       
   603 					<item>
       
   604 					    <code>INVALIDDATA</code>  - when arguments are not valid.
       
   605              				</item> 
       
   606 					<item>
       
   607 					    <code>READERROR</code>  - when unable to read user after adding new user.
       
   608              				</item> 
       
   609 				    </list>
       
   610 				</doc>
       
   611 			</error>
       
   612 			<argument typeref="User" name="user">
       
   613 				<summary> user object which contains user attributes
       
   614 					to be modified.
       
   615 				</summary>
       
   616 			</argument>
       
   617 			<argument type="secret" name="password" nullable="true">
       
   618 				<summary> password to be set for the new user account.
       
   619 				</summary>
       
   620 			</argument>
       
   621 			<argument typeref="UserChangeFields" name="changeFields">
       
   622 				<summary> Indicates which fields have been modified
       
   623 					in the user object by the client.
       
   624 				</summary>
       
   625 			</argument>
    99 		</method>
   626 		</method>
   100 
   627 
   101 		<method name="deleteUser">
   628 		<method name="deleteUser">
   102 			<error typeref="UserMgrError"/>
   629 			<summary>
   103 			<argument type="string" name="username"/>
   630 				Delete user.
       
   631 			</summary>
       
   632 			<doc>
       
   633 				Deletes user or role based on username 
       
   634 				present in the selected scope based on the
       
   635 				filter options.
       
   636 				Sets READERROR error on failure.
       
   637 			</doc>
       
   638 			<error typeref="UserMgrError">
       
   639 				<doc>
       
   640 			            <list>
       
   641 					<item>
       
   642 					    <code>READERROR</code>  - when unable to read user
       
   643              				</item> 
       
   644 				    </list>
       
   645 				</doc>
       
   646 			</error>
       
   647 			<argument type="string" name="username">
       
   648 				<summary> username of account that needs to be deleted.					</summary>
       
   649 			</argument>
   104 		</method>
   650 		</method>
   105 
   651 
   106 		<method name="isAdministrator">
   652 		<method name="setScope">
   107 			<result type="boolean"/>
   653 			<summary>
   108 			<error typeref="UserMgrError"/>
   654 				sets the name-service repository scope.
   109 			<argument type="string" name="username"/>
   655 			</summary>
       
   656 			<doc>
       
   657 				Sets the name-service repository scope.
       
   658 				All subsequent operations will use the specified				scope.
       
   659 			</doc>
       
   660 			<argument name="scope" typeref="ScopeType">
       
   661 				<summary> Specifies the name-service scope to
       
   662 					be used for managing users.
       
   663 				</summary>
       
   664 			</argument>
   110 		</method>
   665 		</method>
   111 
   666 
   112 		<method name="setAdministrator">
   667 		<method name="setFilter">
   113 			<error typeref="UserMgrError"/>
   668 			<summary>
   114 			<argument type="string" name="username"/>
   669 				Sets the filter options.
   115 			<argument type="boolean" name="admin"/>
   670 			</summary>
       
   671 			<doc>
       
   672 				Sets the filter options which are used for
       
   673 				all the subsequent operations. The options
       
   674 				are user or role and search string.
       
   675 			</doc>
       
   676 			<argument name="usertype" typeref="UserType">
       
   677 				<summary> Specifies if users or roles 
       
   678 					will be managed.
       
   679 				</summary>
       
   680 			</argument>
       
   681 			<argument name="searchstring" type="string">
       
   682 				<summary> Specifies the string to match
       
   683 					 against user or role names to be managed.
       
   684 				</summary>
       
   685 			</argument>
   116 		</method>
   686 		</method>
   117 
   687 
       
   688 		<method name="isSystemLabeled">
       
   689 			<summary>Checks if System is Labeled.
       
   690 			</summary>
       
   691 			<doc>
       
   692 				Checks if the Trusted Extensions feature is
       
   693 				enabled on the system.
       
   694 				Returns true if successful and sets
       
   695 				Sets READERROR error on failure.
       
   696 			</doc>
       
   697 			<result type="boolean" />
       
   698 			<error typeref="UserMgrError">
       
   699 				<doc>
       
   700 			            <list>
       
   701 					<item>
       
   702 					    <code>READERROR</code>  - when checking if Trusted Extensions is enabled fails.
       
   703              				</item> 
       
   704 				    </list>
       
   705 				</doc>
       
   706 			</error>
       
   707 		</method>
       
   708 
   118 		<method name="getUserType">
   709 		<method name="getUserType">
       
   710 			<summary>Gets the user type.
       
   711 			</summary>
       
   712 			<doc>
       
   713 				Checks if the user is role or normal user.
       
   714 				Returns UserType set to role or normal user.
       
   715 				Sets READERROR error on failure.
       
   716 			</doc>
   119 			<result typeref="UserType"/>
   717 			<result typeref="UserType"/>
   120 			<error typeref="UserMgrError"/>
   718 			<error typeref="UserMgrError">
   121 			<argument name="username" type="string"/>
   719 				<doc>
       
   720 			            <list>
       
   721 					<item>
       
   722 					    <code>READERROR</code>  - when checking if Trusted Extensions is enabled fails.
       
   723              				</item> 
       
   724 				    </list>
       
   725 				</doc>
       
   726 			</error>
       
   727 			<argument name="username" type="string">
       
   728 				<summary> Specifies user name to check for user or role.
       
   729 				</summary>
       
   730 			</argument>
   122 		</method>
   731 		</method>
   123 	</api>
   732 	</api>
   124 </interface>
   733 </interface>