Skip to content

Commit 1a3aab9

Browse files
author
Roland Hedberg
committed
Merge branch 'master' of https://github.com/rhoerbe/pysaml2 into rhoerbe-master
Conflicts: doc/examples/idp.rst example/idp2/idp.py src/saml2/attributemaps/saml_uri.py src/saml2/sigver.py
1 parent af75f72 commit 1a3aab9

File tree

4 files changed

+51
-1
lines changed

4 files changed

+51
-1
lines changed

doc/howto/config.rst

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -315,6 +315,9 @@ An example might be::
315315
what values on these attributes that can be returned.
316316
*name_form*
317317
Which name-form that should be used when sending assertions.
318+
Using this information the attribute name in the data source will be mapped to
319+
the friendly name, and the saml attribute name will be taken from the uri/oid
320+
defined in the attribute map.
318321

319322
If restrictions on values are deemed necessary those are represented by
320323
regular expressions.::
@@ -612,3 +615,10 @@ A slightly more complex configuration::
612615
613616
Uses metadata files, both local and remote, and will talk to whatever
614617
IdP that appears in any of the metadata files.
618+
619+
Other considerations
620+
::::::::::::::::::::
621+
622+
Entity Categories
623+
-----------------
624+
Entity categories and their attributes are defined in src/saml2/entity_category/<registrar of entcat>.py

doc/install.rst

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ Depending on how you are going to use PySAML2 you might also need
3232
* repoze.who
3333
* python-memcache
3434
* memcached
35+
* bsddb3
3536

3637
Quick build instructions
3738
^^^^^^^^^^^^^^^^^^^^^^^^
@@ -55,3 +56,41 @@ The tests are based on the pypy test environment, so::
5556
is what you should use. If you don't have py.test, get it it's part of pypy!
5657
It's really good!
5758

59+
Hints
60+
-----
61+
62+
RHEL/CentOS installation issues
63+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
64+
65+
A number of packages may not install from pypi. Instead, you may wand to use packages supplies with the OS:
66+
67+
yum -y install swig openssl-devel m2crypto xmlsec1 pyOpenSSL libffi-devel
68+
69+
OS X installation issues
70+
^^^^^^^^^^^^^^^^^^^^^^^^
71+
72+
A number of packages may not install from pypi. Instead, you may wand to use macports:
73+
74+
sudo port install swig xmlsec py27-m2crypto py27-crypto db53
75+
76+
Starting with XCode 5.1 there is an issue with unrecognised gcc command line options.
77+
A temporary fix is described in http://alyssafrazee.com/dangit-mavericks.html
78+
So to install cryptography and bsddb3 you might want to try:
79+
sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future pip install cryptography bsddb3
80+
81+
If the message "ImportError: No module named _bsddb" pops up on starting idp.py, this fix should help:
82+
http://marc-abramowitz.com/archives/2007/11/28/hacking-os-xs-python-dbhash-and-bsddb-modules-to-work/
83+
84+
85+
Generate the HTML documentation
86+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
87+
install Sphinx
88+
cd pysaml2/doc
89+
make html
90+
cd _build
91+
92+
List implemented signature algorithms
93+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
94+
95+
For a list of xmldsig algorithtms implemented for signature validation, run this program from the command line:
96+
saml2/sigver.py -s

src/saml2/ident.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,7 @@ def find_nameid(self, userid, **kwargs):
138138
try:
139139
_vals = self.db[userid]
140140
except KeyError:
141+
logger.debug("failed to find userid %s in IdentDB" % userid)
141142
return res
142143

143144
for val in _vals.split(" "):

tools/sync_attrmaps.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ def __str__(self):
124124
if os.path.isfile(_name):
125125
directory, fname = os.path.split(_name)
126126
amap = AMap(directory, fname, 4 * " ")
127-
f = open(_name)
127+
f = open(_name, "w")
128128
f.write("%s" % amap)
129129
f.close()
130130
elif os.path.isdir(_name):

0 commit comments

Comments
 (0)