Example #1
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="sourceGroup"></param>
 /// <param name="namePatternMatch">Pattern match to find matching groups in the source directory</param>
 public SynchronizePatternMatchingGroupToGroup(
     string sourceGroup,
     NamePatternMatch namePatternMatch)
 {
     this.SourceGroupName  = sourceGroup;
     this.NamePatternMatch = namePatternMatch;
 }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="sourceGroup"></param>
        /// <param name="tableauRole"></param>
        public SynchronizeGroupToRole(string sourceGroup, string tableauRole, string authModel, bool allowPromotedRole, NamePatternMatch namePatternMatch)
        {
            this.SourceGroupName     = sourceGroup;
            this.TableauRole         = tableauRole;
            this.AuthenticationModel = authModel;
            this.NamePatternMatch    = namePatternMatch;

            // TRUE: It is not unexpected to find that the user has an acutal role > than this specified role (useful for Grant License on Sign In scenarios)
            // FALSE: It is unexpected to find the user with a role that differs from this specified role
            this.AllowPromotedRoleForMembers = allowPromotedRole;
        }
        /// <summary>
        /// Constructor: From XML
        /// </summary>
        /// <param name="xmlNode"></param>
        public SynchronizeGroupToRole(XmlNode xmlNode)
        {
            this.SourceGroupName     = xmlNode.Attributes[XmlAttribute_SourceGroup].Value;
            this.TableauRole         = xmlNode.Attributes[XmlAttribute_TargetRole].Value;
            this.AuthenticationModel = xmlNode.Attributes[ProvisioningUser.XmlAttribute_Auth].Value;
            this.NamePatternMatch    = ParseNamePatternMatch(
                XmlHelper.SafeParseXmlAttribute(xmlNode, XmlAttribute_SourceGroupMatch, NamePatternMatch_Equals));
            //An optional filter to apply
            this.FilterSourceGroupNameContains = XmlHelper.SafeParseXmlAttribute(xmlNode, XmlAttribute_FilterSourceGroupContains, "");


            // TRUE: It is not unexpected to find that the user has an acutal role > than this specified role (useful for Grant License on Sign In scenarios)
            // FALSE: It is unexpected to find the user with a role that differs from this specified role
            this.AllowPromotedRoleForMembers = XmlHelper.SafeParseXmlAttribute_Boolean(
                xmlNode, ProvisioningUser.XmlAttribute_AllowPromotedRole, false);;
        }
Example #4
0
        /// <summary>
        /// Constructor: From XML
        /// </summary>
        /// <param name="xmlNode"></param>
        public SynchronizePatternMatchingGroupToGroup(XmlNode xmlNode)
        {
            this.SourceGroupName = xmlNode.Attributes[ProvisionConfigExternalDirectorySync.SynchronizeGroupToGroup.XmlAttribute_SoruceGroup].Value;

            this.NamePatternMatch =
                ProvisionConfigExternalDirectorySync.ParseNamePatternMatch(
                    XmlHelper.SafeParseXmlAttribute(xmlNode, XmlAttribute_SourceGroupMatch, NamePatternMatch_Equals));

            //An optional filter to apply
            this.FilterSourceGroupNameContains = XmlHelper.SafeParseXmlAttribute(xmlNode, XmlAttribute_FilterSourceGroupContains, "");

            //Read in the grant license attributes
            ProvisioningGroup.ReadGrantLicenseXmlAttributes(
                xmlNode,
                this.SourceGroupName,
                out this.GrantLicenseInstructions,
                out this.GrantLicenseRole);
        }