/// <summary> /// Get the Identity Provider's Policy /// </summary> /// <returns>An IdentityPolicy Object</returns> public static IdentityPolicy GetPolicy() { IdentityPolicy idPolicy = null; IUserProvider provider = User.GetRegisteredProvider(); if (provider != null) { UserProviderCaps caps = provider.GetCapabilities(); if (caps != null) { idPolicy = new IdentityPolicy(); if (Simias.Service.Manager.LdapServiceEnabled == true) { idPolicy.CanCreate = false; idPolicy.CanDelete = false; idPolicy.CanModify = false; idPolicy.ExternalIdentities = true; idPolicy.Name = provider.Name; idPolicy.Description = provider.Description; } else { idPolicy.CanCreate = caps.CanCreate; idPolicy.CanDelete = caps.CanDelete; idPolicy.CanModify = caps.CanModify; idPolicy.ExternalIdentities = caps.ExternalSync; idPolicy.Name = provider.Name; idPolicy.Description = provider.Description; } } } return(idPolicy); }
/// <summary> /// Method to retrieve the capabilities of a user identity /// provider. /// </summary> /// <returns>providers capabilities</returns> public UserProviderCaps GetCapabilities() { UserProviderCaps caps = new UserProviderCaps(); caps.CanCreate = false; caps.CanDelete = false; caps.CanModify = false; caps.ExternalSync = true; return(caps); }
/// <summary> /// Generate Sample Data /// </summary> public static void Generate() { // support only non-external user providers IUserProvider provider = Simias.Server.User.GetRegisteredProvider(); UserProviderCaps caps = provider.GetCapabilities(); if (caps.ExternalSync) { throw new ApplicationException("External User Providers Are Not Supported"); } if (!caps.CanCreate) { throw new ApplicationException("Provider Does Not Support User Creation"); } // spin thread Thread t = new Thread(new ThreadStart(Start)); t.IsBackground = true; t.Start(); }