14461 Commits

Author SHA1 Message Date
Colleen Murphy
e45a75d622 Add schema placeholders for Ussuri
Change-Id: Id17ad67d366d539f54752b076b4e6b14187f9782
2020-04-21 09:23:52 -07:00
Zuul
b2cd7a4898 Merge "Stop configuring install_command in tox." 2020-04-20 20:52:17 +00:00
Zuul
84d564582a Merge "Stop adding entry in local_user while updating ephemerals" 2020-04-20 20:34:43 +00:00
Zuul
cb39c7245b Merge "Update contributors document keystone" 2020-04-18 03:38:56 +00:00
Zuul
7bb6314e40 Merge "Cleanup py27 support" 2020-04-10 16:27:51 +00:00
Zuul
cd6fa37f03 Merge "Add federated support for updating a user" 2020-04-10 11:02:38 +00:00
Zuul
ea1b2b0a65 Merge "Add federated support for creating a user" 2020-04-10 11:02:36 +00:00
Zuul
ffc235845a Merge "Add federated support for get user" 2020-04-10 10:53:59 +00:00
Zuul
91fa019034 Merge "Expiring Group Memberships API - Allow set idp authorization_ttl" 2020-04-10 09:37:50 +00:00
Kristi Nikolla
d23965aaf1 Update api-ref for federated objects in user
Also includes a release note.

Change-Id: I72a5d461488b50f20b59d1288016514a2b8f71e5
Closes-Bug: 1816076
2020-04-10 00:49:35 +00:00
Zuul
b3d3735138 Merge "Add expiring user group memberships on mapped authentication" 2020-04-10 00:18:37 +00:00
Zuul
f5fd13f26f Merge "Expiring Group Membership Driver - Add, List Groups" 2020-04-10 00:18:35 +00:00
Kristi Nikolla
c18956f198 Expiring Group Memberships API - Allow set idp authorization_ttl
This patch extends the identity provider API to receive, return
and set the authorization_ttl on an identity provider.

Change-Id: I3c58da290d52149e307280042ed20447da4687f7
Partial-Bug: 1809116
2020-04-09 01:59:58 +00:00
Zuul
033e7aff87 Merge "Expiring User Group Membership Model" 2020-04-08 15:51:48 +00:00
Richard Avelar
e723a1c16e Add federated support for updating a user
This patch adds functionality to allow an operator to pass in a
federated attribute when updating a user. When a user is updated
the federated objects in the federated attribute will be updated
and associated along with the user.

Co-Authored-By: Kristi Nikolla <knikolla@bu.edu>

Partial-Bug: 1816076
Change-Id: I8ee43b437b551858c198320204b768cdba311506
2020-04-08 10:55:19 -04:00
Vishakha Agarwal
39d66ac78c Update contributors document keystone
Python2.7 support is removed from Ussuri Cycle. Thus
updating the rst files regarding the same.

Change-Id: I5a75eac3926ac01565019afbb223df8bf599a69f
2020-04-08 20:19:07 +05:30
Richard Avelar
1627c28282 Add federated support for creating a user
This patch adds functionality to allow an operator to pass in a
federated attribute when creating a user. When a user is created
the federated objects in the federated attribute will be created
and associated along with the user.

Co-Authored-By: Kristi Nikolla <knikolla@bu.edu>

Partial-Bug: 1816076
Change-Id: I6db03af81099a7509635881f05adf5a7257466a7
2020-04-08 10:34:56 -04:00
Vishakha Agarwal
121ee8ce73 Stop configuring install_command in tox.
Currently, we are overriding 'install_command' to use 'pip'. This is
considered poor behavior and 'python -m pip' should be used instead:

https://snarky.ca/why-you-should-use-python-m-pip/

It turns out that this is the the default value provided by tox:

https://tox.readthedocs.io/en/latest/config.html#conf-install_command

So we can remove the line and simply use the default value.

Change-Id: I2bf8b8509788fdc2f23c9ddf4211b19de7b3fb87
2020-04-08 11:11:16 +00:00
Andreas Jaeger
35e83918f4 Cleanup py27 support
Make a few cleanups:
- Remove python 2.7 stanza from setup.py
- Add requires on python >= 3.6 to setup.cfg so that pypi and pip
  know about the requirement
- Remove obsolete sections from setup.cfg
- Update classifiers

Change-Id: Id04f2ca5b879ee1f37cd349ff85ebec01389213a
2020-04-08 08:37:30 +02:00
Richard Avelar
652f02c8b5 Add federated support for get user
This patch adds functionality to get_user that allows it to pull all
associated federated objects and tack it on to be displayed to the
user.

Partial-Bug: 1816076
Change-Id: I8d69ef68153d6650652e1081e5e7b9e5e31a3ed1
2020-04-07 19:59:45 -04:00
Kristi Nikolla
8153a9d592 Add expiring user group memberships on mapped authentication
When a federated user authenticates, they are added to their
mapped groups during shadowing.

Closes-Bug: 1809116

Change-Id: I19dc400b2a7aa46709b242cdeef82beaca975ff3
2020-04-07 19:30:57 -04:00
Kristi Nikolla
d8938514fe Expiring Group Membership Driver - Add, List Groups
Modify the base driver and SQL driver to support expiring group
memberships.

Additions to the SQL Driver to support listing expiring groups
for user.

Change-Id: I7d52cd2003f511483619a429de57201df4990209
Partial-Bug: 1809116
Depends-On: I4294a879071dde07e5eb1da4df133de8032e1059
2020-04-07 19:25:01 -04:00
Kristi Nikolla
ee54ba0ce4 Expiring User Group Membership Model
Creates the model and migration for the expiring user group
membership table.

Change-Id: I48093403539918f81e6a174bdfa7b6497dd307fb
Partial-Bug: 1809116
2020-04-07 11:04:38 -04:00
Zuul
389d8f5a4e Merge "drop mock from test-requirements" 2020-04-03 22:24:10 +00:00
Zuul
c6c214ea43 Merge "Document the "immutable" resource option" 2020-04-02 14:45:50 +00:00
Zuul
7242c18388 Merge "Community goal: Adding contributing.rst" 2020-03-31 22:00:29 +00:00
Vishakha Agarwal
143f07f545 Community goal: Adding contributing.rst
http://lists.openstack.org/pipermail/openstack-discuss/2020-February/012364.html

Change-Id: Ifc74072a5b7ae90910100093450e89f98d5dcb53
2020-03-25 18:52:03 +05:30
Zuul
bf9f5dec55 Merge "Change time faking for totp test" 2020-03-24 19:25:53 +00:00
Zuul
9f9040257f Merge "Add openstack_groups to assertion" 2020-03-23 19:24:38 +00:00
Zuul
d9af77e1d8 Merge "remove oslo-concurrency from requirements" 2020-03-23 09:17:32 +00:00
Vishakha Agarwal
dda426b61a Add openstack_groups to assertion
Currently, a keystone IdP does not provide the
groups to which user belong when generating SAML
assertions.This patch adds an additional attribute
called "openstack_groups" in the assertion.

Change-Id: I205e8bbf9a4579b16177f57e29e363f4205a2b48
Closes-Bug: #1641625
2020-03-19 20:14:41 +05:30
Gage Hugo
6525203c1a Change time faking for totp test
This change moves the time mocking from using freezegun to
using oslo.utils TimeFixture for the unit test
test_with_passcode_in_previous_windows_extended, which was
occasionally failing with 401 errors due to
the totp creation time not properly be faked with
4 extended windows.

Closes-Bug: #1843464

Change-Id: I3aefd99907fbc2d03538c9814f7279b282715679
2020-03-18 15:06:38 +00:00
Colleen Murphy
34f6144a47 Document the "immutable" resource option
Roles, projects, and domains can accept "immutable" as a resource
option. This change explains the option in the admin guide and updates
the API reference to mention it.

Change-Id: I95926927472f6418f97a08fea0ebd56da04ce7a5
Related-bug: #1823258
2020-03-17 14:33:29 -07:00
Zuul
62cd34d40d Merge "Copy shibboleth logs in federation jobs" 2020-03-17 20:30:27 +00:00
Zuul
4cd555608c Merge "Correcting api-ref for users" 2020-03-17 20:30:24 +00:00
Jon Schlueter
e5bab15a09 remove oslo-concurrency from requirements
many years ago when eventlet support was dropped
the usage of osl_concurrency was also removed.
commit was here I963d94bbd188dbb6eba68623a42c5bc3f2289da4
dropping requirement on it since it is not used

Change-Id: I72f278b7da59096f71f0e59f0fb1f70f93265aa4
2020-03-17 08:39:37 -04:00
Jon Schlueter
b35459b290 drop mock from test-requirements
after commit I8bbcedb7ad3f0bc2e06dfa13878a97411ee1dc6d switched usage
to unittest.mock everywhere we can now drop mock from test-requirements
which reduces extra package from being installed

Change-Id: Id9d87aa8449b46dd74b2acedcdd9239200d108fb
2020-03-17 08:15:25 -04:00
Vishakha Agarwal
271c09bb53 Correcting api-ref for users
The "options" is not "optional" in user api responses.
This patch removes the 'optional' from the same and also updates
string with the format to be used while creating api-ref in
keystone.

Change-Id: I848f168215800b42480d14f1f1905d8843ed3faa
2020-03-10 17:13:19 +00:00
Vishakha Agarwal
ba2e4b83e8 NIT: Fix spelling
This patch fixes wrong spelling in auth.py.

Change-Id: I98fa9c88aa0d126718fdba952fbe22a4fe62f6b5
2020-03-06 12:52:15 +05:30
Zuul
8533b7dbd7 Merge "Ignore SQLAlchemy RemovedIn20Warning" 2020-03-05 01:58:19 +00:00
Zuul
a03b041747 Merge "Refactor some ldap code to implement TODOs" 2020-03-04 16:24:59 +00:00
Zuul
26e886ee01 Merge "Doc Cleanup" 2020-03-04 04:08:40 +00:00
Colleen Murphy
0bbd2dd6fb Copy shibboleth logs in federation jobs
Ensure that Zuul publishes both the shibboleth config and the shibboleth
logs in the job artifacts so that we can debug issues with the SAML SP.

Change-Id: I53f844fae775d9b30d9b7f867bac0ed873b86bc7
2020-03-03 11:03:25 -08:00
Mike Bayer
a183badaa4 Ignore SQLAlchemy RemovedIn20Warning
SQLAlchemy 1.4 will be introducing a new warning
class called RemovedIn20Warning, which will indicate behaviors
and APIs that are planned on being changed for the
SQLAlchemy 2.0 release [1].  As SQLAlchemy 2.0 is planned on
being a more major API break, applications will normally need
to wait until they are fully on SQLAlchemy 1.4 only as well as
Python 3 only in order to begin using new APIs that will allow
migration to 2.0.

For now, Keystone and others don't have a need to be raising
for this warning as there are not yet clear upgrade paths
established.

[1] https://docs.sqlalchemy.org/en/14/changelog/migration_20.html#sqlalchemy-1-x-to-2-0-transition

Change-Id: Icb005b2e7b9d851f5a3e8677599b32a6e3edddc2
2020-03-03 13:32:19 -05:00
Sean McGinnis
8c99a90f36 Switch from mock to unittest.mock use
The mock library is a third party lib that attempted to bridge the gap
between Python 2 and Python 3 mocking. Now that we have moved to py3
only, there is no need to use a third party lib and we can use the
standard built-in mocking support.

Change-Id: I8bbcedb7ad3f0bc2e06dfa13878a97411ee1dc6d
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
2020-03-02 13:40:40 -06:00
Radosław Piliszek
a6bb81146f Refactor some ldap code to implement TODOs
This implements TODOs added in [1], as promised in [2].
The first TODO is realised only partially because most ldap code
actually relies on having two connections obtained from the pool.

This optimizes mixin code by removing extra ldap calls.
There is no change in the observed behaviour of integration.

This also removes some duplication and refactors names to avoid
some confusion related to dn/object_id.

Backport to: Train, Stein (with [1]&[3]), Rocky (with [1]&[3]),
             Queens (with [1]&[3])

[1] c7fae97d873f72068ca65538ec5b5919c0ac7d5a
[2] https://review.opendev.org/683303
[3] 19d4831daa3991bed48fb364fa05927740c96445

Change-Id: I22f3bce647182996dfc06084ee6d4989449e3d2d
2020-02-28 20:27:31 +01:00
Zuul
97d83016af Merge "Tell reno to ignore the kilo branch" 2020-02-25 04:14:48 +00:00
Zuul
9d60defb73 Merge "Add docs about bootstrapping immutable roles" 2020-02-25 03:18:05 +00:00
Andreas Jaeger
e715a4bbd0 Doc Cleanup
Remove unused git_cmd from api-ref.
Remove html_last_updated_fmt and latex_engine setting,
these are done by openstackdocstheme nowadays.

Change-Id: I1c63f83b3fa074f9fa136e0b89bba0586756bc56
2020-02-23 18:16:01 +01:00
Zuul
cdab9284d1 Merge "Use inspect instead of Inspector.from_engine()" 2020-02-21 23:04:11 +00:00