protected override IEnumerable <ClaimIssuanceRule> GetRulesToAdd()
        {
            var addRolesRuleDefinition = new StringBuilder();

            addRolesRuleDefinition.AppendLine(@"c:[Type == ""http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname"", Issuer == ""AD AUTHORITY""]");
            addRolesRuleDefinition.AppendLine(@" => add(store = ""Active Directory"", types = (""http://schemas.microsoft.com/ws/2008/06/identity/claims/role""), query = "";tokenGroups;{0}"", param = c.Value);");

            var addRolesRule = new ClaimIssuanceRule {
                Definition = addRolesRuleDefinition.ToString()
            };

            addRolesRule.Name = "Role - Add all groups to role";
            yield return(addRolesRule);

            var filterAndIssueRolesRuleDefinition = new StringBuilder();

            filterAndIssueRolesRuleDefinition.AppendLine(string.Format(@"c:[Type == ""http://schemas.microsoft.com/ws/2008/06/identity/claims/role"", Value =~ ""^(?i){0}""]", RoleFilter));
            filterAndIssueRolesRuleDefinition.AppendLine(@" => issue(claim = c);");

            var filterAndIssueRolesRule = new ClaimIssuanceRule {
                Definition = filterAndIssueRolesRuleDefinition.ToString()
            };

            filterAndIssueRolesRule.Name     = string.Format("Role - Filter added roles by {0}", RoleFilter);
            filterAndIssueRolesRule.Template = ClaimIssuanceRule.PassthroughTemplateName;
            yield return(filterAndIssueRolesRule);
        }
Beispiel #2
0
        protected override IEnumerable <ClaimIssuanceRule> GetRulesToAdd()
        {
            var nameRuleDefinition = new StringBuilder();

            nameRuleDefinition.AppendLine(@"c:[Type == ""http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname"", Issuer == ""AD AUTHORITY""]");
            nameRuleDefinition.AppendLine(@"=> issue(store = ""Active Directory"", types = (""http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name""), query = "";displayName;{0}"", param = c.Value);");

            var nameRule = new ClaimIssuanceRule {
                Name = "Issue Name", Definition = nameRuleDefinition.ToString()
            };

            yield return(nameRule);
        }
Beispiel #3
0
        protected override IEnumerable <ClaimIssuanceRule> GetRulesToAdd()
        {
            var cvrNumberRuleDefinition = new StringBuilder();

            cvrNumberRuleDefinition.AppendLine(@"c:[Type == ""http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname"", Issuer == ""AD AUTHORITY""]");
            cvrNumberRuleDefinition.AppendLine(@" => issue(store = ""DliAttributeStore"", types = (""http://claims.dlbr.dk/2012/02/cvrnumber""), query = ""CvrNumber"", param = c.Value);");

            var cvrNumberRule = new ClaimIssuanceRule {
                Name = "Issue CVR Number", Definition = cvrNumberRuleDefinition.ToString()
            };

            yield return(cvrNumberRule);
        }