Blame SPECS/mod_auth_mellon.spec

8f4470
Summary: A SAML 2.0 authentication module for the Apache Httpd Server
8f4470
Name: mod_auth_mellon
8f4470
Version: 0.14.0
eea66f
Release: 12%{?dist}.1
8f4470
Group: System Environment/Daemons
8f4470
Source0: https://github.com/UNINETT/mod_auth_mellon/releases/download/v%{version}/%{name}-%{version}.tar.gz
8f4470
Source1: auth_mellon.conf
8f4470
Source2: 10-auth_mellon.conf
8f4470
Source3: mod_auth_mellon.conf
8f4470
Source4: mellon_create_metadata.sh
8f4470
Source5: README.redhat.rst
8f4470
Source6: mellon_user_guide.html
8f4470
License: GPLv2+
8f4470
BuildRequires:  gcc
8f4470
BuildRequires: curl-devel
8f4470
BuildRequires: glib2-devel
8f4470
BuildRequires: httpd-devel
8f4470
BuildRequires: lasso-devel >= 2.5.1
8f4470
BuildRequires: openssl-devel
8f4470
BuildRequires: xmlsec1-devel
8f4470
Requires: httpd-mmn = %{_httpd_mmn}
8f4470
Requires: lasso >= 2.5.1
8f4470
Url: https://github.com/UNINETT/mod_auth_mellon
8f4470
8f4470
Patch0001: 0001-Modify-am_handler-setup-to-run-before-mod_proxy.patch
8f4470
Patch0002: 0002-Fix-redirect-URL-validation-bypass.patch
8f4470
Patch0003: 0003-backport-Make-the-environment-variable-prefix-configurable.patch
fd3619
Patch0004: 0004-Fix-incorrect-header-used-for-detecting-AJAX-request.patch
fd3619
Patch0005: 0005-CVE_2019_13038.patch
493c9a
Patch0006: 0006-Add-none-option-for-samesite.patch
493c9a
Patch0007: 0007-avoid-always-set-SameSite-cookie.patch
493c9a
Patch0008: 0008-Set-SameSite-to-None-on-test-cookie.patch
eea66f
Patch0009: 0009-Prevent-redirect-to-URLs-that-begin-with.patch
8f4470
8f4470
# FIXME: RHEL-7 does not have rubygem-asciidoctor, only asciidoc. However,
8f4470
# I could not get asciidoc to render properly so instead I generated
8f4470
# mellon_user_guide.html on Fedora using asciidoctor and included
8f4470
# mellon_user_guide.html as a SOURCE. If the user guide source is updated
8f4470
# the mellon_user_guide.html will need to be regenerated. 
8f4470
8f4470
%description
8f4470
The mod_auth_mellon module is an authentication service that implements the
8f4470
SAML 2.0 federation protocol. It grants access based on the attributes
8f4470
received in assertions generated by a IdP server.
8f4470
8f4470
%prep
8f4470
%setup -q -n %{name}-%{version}
8f4470
%patch1 -p1
8f4470
%patch2 -p1
8f4470
%patch3 -p1
fd3619
%patch4 -p1
fd3619
%patch5 -p1
493c9a
%patch6 -p1
493c9a
%patch7 -p1
493c9a
%patch8 -p1
eea66f
%patch9 -p1
8f4470
8f4470
%build
8f4470
export APXS=%{_httpd_apxs}
8f4470
%configure --enable-diagnostics
8f4470
make clean
8f4470
make %{?_smp_mflags}
8f4470
cp .libs/%{name}.so %{name}-diagnostics.so
8f4470
8f4470
%configure
8f4470
make clean
8f4470
make %{?_smp_mflags}
8f4470
8f4470
%install
8f4470
# install module
8f4470
mkdir -p %{buildroot}%{_httpd_moddir}
8f4470
install -m 755 .libs/%{name}.so %{buildroot}%{_httpd_moddir}
8f4470
install -m 755 %{name}-diagnostics.so %{buildroot}%{_httpd_moddir}
8f4470
8f4470
# install module configuration
8f4470
mkdir -p %{buildroot}%{_httpd_confdir}
8f4470
install -m 644 %{SOURCE1} %{buildroot}%{_httpd_confdir}
8f4470
mkdir -p %{buildroot}%{_httpd_modconfdir}
8f4470
install -m 644 %{SOURCE2} %{buildroot}%{_httpd_modconfdir}
8f4470
8f4470
mkdir -p %{buildroot}%{_tmpfilesdir}
8f4470
install -m 644 %{SOURCE3} %{buildroot}%{_tmpfilesdir}
8f4470
mkdir -p %{buildroot}/run/%{name}
8f4470
8f4470
# install script to generate metadata
8f4470
mkdir -p %{buildroot}/%{_libexecdir}/%{name}
8f4470
install -m 755 %{SOURCE4} %{buildroot}/%{_libexecdir}/%{name}
8f4470
8f4470
#install documentation
8f4470
mkdir -p %{buildroot}/%{_pkgdocdir}
8f4470
8f4470
# install Red Hat README
8f4470
install -m 644 %{SOURCE5} %{buildroot}/%{_pkgdocdir}
8f4470
8f4470
# install user guide
8f4470
cp -r doc/user_guide %{buildroot}/%{_pkgdocdir}
8f4470
install -m 644 %{SOURCE6} %{buildroot}/%{_pkgdocdir}/user_guide
8f4470
8f4470
%package diagnostics
8f4470
Summary: Build of mod_auth_mellon with diagnostic logging
8f4470
Requires: %{name} = %{version}-%{release}
8f4470
8f4470
%description diagnostics
8f4470
Build of mod_auth_mellon with diagnostic logging. See README.redhat.rst
8f4470
in the doc directory for instructions on using the diagnostics build.
8f4470
8f4470
%files diagnostics
8f4470
%{_httpd_moddir}/%{name}-diagnostics.so
8f4470
8f4470
%files
8f4470
%if 0%{?rhel} && 0%{?rhel} < 7
8f4470
%doc COPYING
8f4470
%else
8f4470
%license COPYING
8f4470
%endif
8f4470
%doc README.md NEWS ECP.rst
8f4470
%doc %{_pkgdocdir}/README.redhat.rst
8f4470
%doc %{_pkgdocdir}/user_guide
8f4470
%config(noreplace) %{_httpd_modconfdir}/10-auth_mellon.conf
8f4470
%config(noreplace) %{_httpd_confdir}/auth_mellon.conf
8f4470
%{_httpd_moddir}/mod_auth_mellon.so
8f4470
%{_tmpfilesdir}/mod_auth_mellon.conf
8f4470
%{_libexecdir}/%{name}
8f4470
%attr(0755,apache,apache) %dir /run/%{name}/
8f4470
8f4470
%changelog
eea66f
* Wed Dec 15 2021 Jakub Hrozek <jhrozek@redhat.com> - 0.14.0-12.1
eea66f
- Resolves: rhbz#1986805 - CVE-2021-3639 mod_auth_mellon: Open Redirect
eea66f
                           vulnerability in logout URLs [rhel-8]
eea66f
493c9a
* Mon Jan 25 2021 Jakub Hrozek <jhrozek@redhat.com> - 0.14.0-12
493c9a
- Resolves: rhbz#1791262 - Backport SameSite=None cookie from upstream to
493c9a
                           support latest browsers
493c9a
fd3619
* Fri Oct 18 2019 Jakub Hrozek <jhrozek@redhat.com> - 0.14.0-11
fd3619
- Resolves: rhbz#1731053 - CVE-2019-13038 mod_auth_mellon: an Open Redirect
fd3619
                           via the login?ReturnTo= substring which could
fd3619
                           facilitate information theft [rhel-8]
fd3619
fd3619
* Fri Oct 18 2019 Jakub Hrozek <jhrozek@redhat.com> - 0.14.0-10
fd3619
- Resolves: rhbz#1761774 - mod_auth_mellon fix for AJAX header name
fd3619
                           X-Requested-With
fd3619
8f4470
* Thu Jun 13 2019 Jakub Hrozek <jhrozek@redhat.com> - 0.14.0-9
8f4470
- Just bump the release number
8f4470
- Related: rhbz#1718238 - mod_auth_mellon-diagnostics RPM not in product
8f4470
                          listings
8f4470
8f4470
* Fri Jun  7 2019 Jakub Hrozek <jhrozek@redhat.com> - 0.14.0-8
8f4470
- Resolves: rhbz#1691894 - [RFE] Config option to change mod_auth_mellon prefix
8f4470
8f4470
* Fri Jun  7 2019 Jakub Hrozek <jhrozek@redhat.com> - 0.14.0-7
8f4470
- Apply the patch from the previous commit
8f4470
- Resolves: rhbz#1692471 - CVE-2019-3877 appstream/mod_auth_mellon: open
8f4470
                           redirect in logout url when using URLs with
8f4470
                           backslashes [rhel-8]
8f4470
8f4470
* Fri Jun  7 2019 Jakub Hrozek <jhrozek@redhat.com> - 0.14.0-6
8f4470
- Resolves: rhbz#1692471 - CVE-2019-3877 appstream/mod_auth_mellon: open
8f4470
                           redirect in logout url when using URLs with
8f4470
                           backslashes [rhel-8]
8f4470
8f4470
* Fri Jun  7 2019 Jakub Hrozek <jhrozek@redhat.com> - 0.14.0-5
8f4470
- Resolves: rhbz#1692457 - CVE-2019-3878 mod_auth_mellon: authentication
8f4470
                           bypass in ECP flow [rhel-8.1.0]
8f4470
8f4470
* Wed Apr 24 2019 Jakub Hrozek <jhrozek@redhat.com> - 0.14.0-4
8f4470
- Resolves: rhbz#1702695 - fresh install of mod_auth_mellon shows rpm
8f4470
                           verification warnings
8f4470
8f4470
* Mon Jul 30 2018 Florian Weimer <fweimer@redhat.com> - 0.14.0-3
8f4470
- Rebuild with fixed binutils
8f4470
8f4470
* Fri Jun  1 2018  <jdennis@redhat.com> - 0.14.0-2
8f4470
- Resolves: rhbz#1553885
8f4470
- fix file permissions on doc files
8f4470
8f4470
* Fri Jun  1 2018  <jdennis@redhat.com> - 0.14.0-1
8f4470
- Resolves: rhbz#1553885
8f4470
- Rebase to current upstream release
8f4470
8f4470
* Thu Mar 29 2018 John Dennis <jdennis@redhat.com> - 0.13.1-2
8f4470
- Resolves: rhbz#1481330 Add diagnostic logging
8f4470
- Resolves: rhbz#1295472 Add MellonSignatureMethod config option to set
8f4470
  signature method used to sign SAML messages sent by Mellon.
8f4470
  Defaults to original sha1.
8f4470
8f4470
* Sun Oct  1 2017 John Dennis <jdennis@redhat.com> - 0.13.1-1
8f4470
- upgrade to new upstream release
8f4470
8f4470
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.12.0-7
8f4470
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
8f4470
8f4470
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.12.0-6
8f4470
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
8f4470
8f4470
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.12.0-5
8f4470
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
8f4470
8f4470
* Tue Jan 17 2017 John Dennis <jdennis@redhat.com> - 0.12.0-4
8f4470
- Resolves: bug #1414019 Incorrect PAOS Content-Type header
8f4470
8f4470
* Mon Jan  9 2017 John Dennis <jdennis@redhat.com> - 0.12.0-3
8f4470
- bump release for rebuild
8f4470
8f4470
* Tue May  3 2016 John Dennis <jdennis@redhat.com> - 0.12.0-2
8f4470
- Resolves: bug #1332729, mellon conflicts with mod_auth_openidc
8f4470
- am_check_uid() should be no-op if mellon not enabled
8f4470
8f4470
* Wed Mar  9 2016 John Dennis <jdennis@redhat.com> - 0.12.0-1
8f4470
- Update to new upstream 0.12.0
8f4470
- [CVE-2016-2145] Fix DOS attack (Apache worker process crash) due to
8f4470
  incorrect error handling when reading POST data from client.
8f4470
8f4470
- [CVE-2016-2146] Fix DOS attack (Apache worker process crash /
8f4470
  resource exhaustion) due to missing size checks when reading
8f4470
  POST data.
8f4470
8f4470
In addition this release contains the following new features and fixes:
8f4470
8f4470
- Add MellonRedirectDomains option to limit the sites that
8f4470
  mod_auth_mellon can redirect to. This option is enabled by default.
8f4470
8f4470
- Add support for ECP service options in PAOS requests.
8f4470
8f4470
- Fix AssertionConsumerService lookup for PAOS requests.
8f4470
8f4470
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.11.0-4
8f4470
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
8f4470
8f4470
* Wed Dec 23 2015 John Dennis <jdennis@redhat.com> - 0.11.0-3
8f4470
- Fix the following warning that appears in the Apache log
8f4470
  lasso-CRITICAL **: lasso_provider_get_metadata_list_for_role: assertion '_lasso_provider_get_role_index(role)' failed
8f4470
8f4470
* Fri Sep 18 2015 John Dennis <jdennis@redhat.com> - 0.11.0-2
8f4470
- Add lasso 2.5.0 version dependency
8f4470
8f4470
* Fri Sep 18 2015 John Dennis <jdennis@redhat.com> - 0.11.0-1
8f4470
- Upgrade to upstream 0.11.0 release.
8f4470
- Includes ECP support, see NEWS for all changes.
8f4470
- Update mellon_create_metadata.sh to match internally generated metadata,
8f4470
  includes AssertionConsumerService for postResponse, artifactResponse &
8f4470
  paosResponse.
8f4470
8f4470
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.10.0-2
8f4470
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
8f4470
8f4470
* Wed Jan  7 2015 Simo Sorce <simo@redhat.com> 0.10.0-1
8f4470
- New upstream release
8f4470
8f4470
* Tue Sep  2 2014 Simo Sorce <simo@redhat.com> 0.9.1-1
8f4470
- New upstream release
8f4470
8f4470
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8.0-2
8f4470
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
8f4470
8f4470
* Tue Jun 24 2014 Simo Sorce <simo@redhat.com> 0.8.0-1
8f4470
- New upstream realease version 0.8.0
8f4470
- Upstream moved to github
8f4470
- Drops patches as they have been all included upstream
8f4470
8f4470
* Fri Jun 20 2014 Simo Sorce <simo@redhat.com> 0.7.0-3
8f4470
- Backport of useful patches from upstream
8f4470
  - Better handling of IDP reported errors
8f4470
  - Better handling of session data storage size
8f4470
8f4470
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.7.0-2
8f4470
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
8f4470
8f4470
* Tue Dec 10 2013 Simo Sorce <simo@redhat.com> 0.7.0-1
8f4470
- Fix ownership of /run files
8f4470
8f4470
* Wed Nov 27 2013 Simo Sorce <simo@redhat.com> 0.7.0-0
8f4470
- Initial Fedora release based on version 0.7.0
8f4470
- Based on an old spec file by Jean-Marc Liger <jmliger@siris.sorbonne.fr>