Add User Identity

Good day all.  We have created an Identity called sm_AddUsers (v11 SP10).  We have a separate team that is taking over the responsibilities of adding users to the system and they do not require any other elevated privileges, so I don't want to add them to the Administrators Identity.  I can't seem to get this Identity setup correctly with permissions to be able to add users.  The current error they receive is

Add access is denied for Alias.

Aras.Server.Core.PermissionsNoCanAddFoundException

I went through User, Alias, Identity, and Member ItemTypes and made sure the Identity was in Can Add and the permissions where set the same as the Administrators (except User, they cannot delete).  I'm at a loss for why this is happening.  Is there something else that affects who can add a User?  Thank you for your help.

  • Well, it looks like it was fixed with FM.  One of the team members contacted me this morning to let me know that she was able to add a user.  I guess it just took a little bit for everything to work.

  • Good day all.  Just a follow up with this.  Josh Jerge (Aras SUpport) helped to modify a method that we have for allowing Users to be added.  I thought I would post it here in case someone else wants to use it.

    Name:  UpdateUserForSSO
    Execution:  World
    Script:

    'attach this to the OnAfterAdd and OnAfterUpdate events for the USER itemtype
    'See myinnovator.com issue IR-006086.
    'MethodTemplateName=VBScriptMainUpgrade;

    Sub MethodMainSubroutine()

    Const pmIdentityNm As String = "Administrators"
    Dim pmIdentity As Aras.Server.Security.Identity = Aras.Server.Security.Identity.GetByName(pmIdentityNm)

    Dim pmIdentityWasGranted As Boolean = Aras.Server.Security.Permissions.GrantIdentity(pmIdentity)
    If Not CCO.Permissions.UserHasRootOrAdminIdentity() Then
    Exit Sub
    End If

    Dim cfgpath As String = "/Innovator/ClientLogon"
    Dim cfg As XmlElement = CType(CCO.Cache.GetCacheInfo("ApplicationXML").SelectSingleNode(cfgpath), XmlElement)

    If IsNothing(cfg) OrElse cfg.GetAttribute("shared_secret") = "" Then
    Exit Sub
    End If

    CCO.ApplyItem.ExecuteMethodByName(inDom, outDom, "Reset All Auth Passwords", True)
    If pmIdentityWasGranted Then
    Aras.Server.Security.Permissions.RevokeIdentity(pmIdentity)
    End If

    End Sub