e96525f0bd40f30108bd97cd90ad03936f0ffe39
[shibboleth/cpp-sp.git] / doc / RELEASE.txt
1 Release Notes
2
3 Shibboleth Native SP
4
5 Fix/enhancement lists:
6 https://bugs.internet2.edu/jira/secure/ReleaseNote.jspa?projectId=10011
7
8 NOTE: The shibboleth2.xml configuration format in this release
9 is fully compatible with the 2.x releases, but there are significant
10 new options available to simplify the majority of configurations.
11 A stripped down default configuration and a "full" example file are
12 included.
13
14 Fully Supported
15
16 - SAML 1.0, 1.1, 2.0 Single Sign-On
17         - Shibboleth 1.x request profile
18         - 1.x POST/Artifact profiles
19         - 2.0 HTTP-Redirect/POST/POST-SimpleSign/Artifact/PAOS bindings
20
21 - SAML 1.0, 1.1, 2.0 Attribute Query via Attribute Resolver plugin
22         - SAML SOAP binding
23
24 - SAML 2.0 Single Logout
25     - HTTP-Redirect/POST/POST-SimpleSign/Artifact bindings
26     - Front and back-channel application notification of logout
27     - Race detection of late arriving assertions
28
29 - SAML 2.0 NameID Management (IdP-initiated only)
30     - HTTP-Redirect/POST/POST-SimpleSign/Artifact bindings
31     - Front and back-channel application notification of changes
32
33 - ADFS WS-Federation Support
34     - SSO and SLO
35     - experimental support for SAML 2.0 assertions
36
37 - Shibboleth WAYF and SAML DS protocols for IdP Discovery
38     - Generates JSON feed of IdPs using UIInfo metadata extensions
39
40 - Metadata Providers
41         - Bulk resolution via local file, or URL with local file backup
42         - Dynamic resolution and caching based on entityID or MDX 
43         - Filtering based on whitelist, blacklist, or signature verification
44         - Support for enhanced PKI processing in transport and signature verification
45
46 - Metadata Generation Handler
47     - Generates and optionally signs SAML metadata based on SP configuration
48
49 - Status Handler
50     - Reports on status and configuration of SP
51     
52 - Session Handler
53     - Dumps information about an active session 
54
55 - Trust Engines
56         - Explicit key and PKIX engines via metadata, superset compatible with 1.3
57         - PKIX trust engine with static root list
58         
59 - Configurable per-endpoint Security Policy rules
60         - Replay and freshness detection
61         - XML signing
62         - Simple "blob" signing
63         - TLS X.509 certificate authentication
64         - SAML condition handling, including delegation support
65
66 - Client transport authentication to SOAP endpoints via libcurl
67         - TLS X.509 client certificates
68         - Basic-Auth
69         - Digest-Auth (untested)
70         - NTLM (untested)
71
72 - Encryption
73         - All incoming SAML 2 encrypted element types (Assertion, NameID, Attribute)
74         - Optional outgoing encryption of NameID in requests and responses
75
76 - General Security
77     - Black/whitelisting of XML security algorithms (with xml-security 1.6+)
78     - RSA and ECDSA signatures (EC requires xml-security 1.6+ and support from openssl)
79     - Metadata-based algorithm selection 
80
81 - Attributes
82         - Decoding and exporting SAML 1 and 2 attributes
83                 - Strings
84                 - Value/scope pairs (legacy and value@scope syntaxes supported)
85                 - NameIDs
86                 - Base64 to string
87         - XML to base64-encoded XML
88                 - DOM to internal data structure
89                 - KeyInfo-based data, including metadata-derived KeyDescriptors
90                 - Metadata EntityAttributes extension "tags"
91
92 - Attribute Filtering
93         - Policy language compatible with IdP filtering, except that references
94                 only work within policy files, not across them
95         - Rules based on, attribute issuer, requester, scope, and value, authentication
96                 method, based on exact string and regular expressions.
97     - Boolean functions supporting AND, OR, and NOT for use in composing rules
98     - Wildcard rules allowing all unspecified attributes through with no filtering
99
100 - Assertion Export
101         - Oversized header replaced with Shib-Assertion-Count and Shib-Assertion-NN headers
102                 containing local URL to fetch SAML assertion using HTTP GET
103
104 - Enhanced Spoofing Detection
105         - Detects and blocks client headers that would match known attribute headers
106         - Key-based mechanism to handle internal server redirection while maintaining protection
107
108 - ODBC Clustering Support
109         - Tested against a few different servers with various drivers
110
111 - RequestMap enhancements
112     - Regular expression matching for hosts and paths
113     - Query string parameter matching
114
115 - Error handling enhancements
116     - Reporting of SAML status errors
117     - Optional redirection to custom error handler
118
119 - Form POST data preservation
120     - Support on Apache for preserving URL-encoded form data across SSO 
121
122 - Apache module enhancements
123     - "OR" coexistence with other authorization modules
124     - htaccess-based override of any valid RequestMap property
125     - htaccess support for external access control plugins
126
127 - Command line tools
128     - samlsign for manual XML signing and verification
129     - mdquery for interrogating via metadata configuration
130     - resolvertest for exercising attribute extraction, filtering, and resolution