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); }
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); }
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); }