10621 Commits

Author SHA1 Message Date
Samuel de Medeiros Queiroz
0f6fa0e3d3 Move Identity Provider API to its own file
Change I2423030bd0849c051d22f63bf60b6a5f41f72574 migrated Federation
api-ref docs into keystone repository.

Moving Identity Provider API to its own file is one of the TODO
comments left there, which is being addressed in this change.

Change-Id: I5c5b26c2d4c9920d6b9642eaf0fc47ed5bffb3cb
2016-07-29 15:28:04 -03:00
Colleen Murphy
bc99dc7677 Add dummy domain_id column to cached role
When token caching is turned on, upgrading from stable/liberty to
stable/mitaka or master causes tokens to fail to be issued for the
time-to-live of the cache. This is because as part of the token
issuance the token's role is looked up, and the cached version of the
role immediately after upgrade does not have a domain_id field, even
though that column was successfully added to the role database. This
patch hacks around that by artificially adding a null domain_id value
to the role reference.

This must be done in the manager, as opposed to the driver, because it
is the manager that is caching the value and so modifying the value
returned by the driver has no effect.

Change-Id: I55c791486f2a26ae995f693370b016895176a16f
Closes-bug: #1592169
2016-07-29 11:05:32 -07:00
Jenkins
51ada8e255 Merge "Allow attributes other than enabled in schema" 2016-07-29 17:41:42 +00:00
Jenkins
d46b80d7b7 Merge "Remove the extensions repos" 2016-07-29 16:19:53 +00:00
Boris Bobrov
6a94b28281 Allow attributes other than enabled in schema
Although it is not needed, keystoneclient passed `id` in the payload.
For compatibility with it (and with other clients) we have to allow
passing other attributes.

Change-Id: I997d55de28825921ed33646a9ee5cf494b089aba
Closes-Bug: 1607751
2016-07-29 14:41:41 +03:00
Jenkins
26a5bf5e99 Merge "Document the domain config API as stable" 2016-07-29 06:23:19 +00:00
Jenkins
529ff14940 Merge "Add schema for enabling a user" 2016-07-29 05:26:14 +00:00
Henry Nash
345d2a04e1 Remove the extensions repos
All extension are now migrated into the keystone core and the
migrations in the old contrib folders just raise an error. Since
these can only be called from the now deprecated --extensions
options in keyston-manage, we might as well get rid of them all
and just raise the error in keystone manage. We can also clean
up the mirgation helpers accordingly

This clean up is useful ahead of layering on the rolling upgrade
support in keystone manage and the helpers.

Change-Id: I749dc7e13050e211df1f4fd144cb0479891e3e64
2016-07-29 06:24:02 +01:00
Jenkins
108edda14a Merge "TOTP auth not functional in python3" 2016-07-29 03:30:45 +00:00
Eric Brown
8cef8483e6 Document the domain config API as stable
As a follow-on to commit I7bf0a914be13f88313c14bc196369de49cc7413f,
the documentation should also reflect that the domain config API
is now stable. Previous releases are still considered experimental.

Change-Id: I6fb993ac678d0aeaa43547c4b24b62d1a784a615
2016-07-28 14:11:00 -07:00
Eric Brown
fc924f8e44 Remove configuration references to eventlet
There were still a couple references remaining for using keystone
under eventlet. These are no longer applicable since keystone is
no longer supported under eventlet.

Change-Id: If6d2013cc2396d6d1df43f7f2091b5fa02115ca4
2016-07-28 14:04:28 -07:00
David Stanek
a14add150a Adds a custom deepcopy handler
This allows the SecurityErrors to be deep copied without causing
annoying warning in the logs.

Closes-Bug: #1607107
Change-Id: I24635dd5ab10f736b82e9fea4d0a36b1a45c27f1
2016-07-28 20:58:44 +00:00
Dolph Mathews
927b08bbf7 Add token feature support matrix to documentation
This introduces a feature support matrix to illustrate which of our
various token providers supports which API operations and features. This
is intended to mirror Nova's feature support matrix documentation page,
found here:

  http://docs.openstack.org/developer/nova/support-matrix.html

After running `tox -e docs`, the result is embedded in
`doc/build/html/configuration.html`.

Change-Id: I3dc896a2906e25827a9e01afc7de5a737831c336
2016-07-28 15:44:28 +00:00
Jenkins
d07f59ff38 Merge "Invalid tls_req_cert constant as default" 2016-07-28 14:23:13 +00:00
Boris Bobrov
8246fc2c35 Test number of queries on list_users
Change-Id: I399b4a2309f387418844f91ade1a3e59e6a2129a
Related-Bug: 1606426
2016-07-28 17:02:15 +03:00
Dave Chen
295cfde14c No need the redundant validation in manager level
Alone with the enabling of schema validation for V2 API, the property
validation has been handled in controller level, property validation
based on clean.py in manager level is no long needed for creating a
project since schema validation is enabled for both V2 and V3.

The patch removes the call from `clean.py` and remove the relevant
testcases since we already have the testcases both in
`test_validation.py` or `test_v2_validation.py`.

Partially implements: bp schema-validation-extent

Change-Id: I9d2ea60d496d83372109ca227ee2091850de0213
2016-07-28 04:36:39 +00:00
Dave Chen
f26b31a014 Add the missing testcases for name and enabled
- `bool`, `int`, whitespace are not valid name.
- The valid data type for `enabled` is `bool`, other type such as
 `string`, `int` are invalid.

This change fix the gap between testcases in manager level and
testcases in `test_v2_validation.py` so that we can clean up the
testcases validated by clean.py in the follow up.

Partially implements: bp schema-validation-extent

Change-Id: Ifade298b9dafe7df3380c16de0a6fac4f941e9c3
2016-07-28 12:19:33 +08:00
David Stanek
fd861dca5f Adds test for SecurityError's translation behavior
A confusing log message is logged when translating SecurityErrors within
another translated string.

Related-bug: #1607107
Change-Id: I315e68462d7096a2cbc38c1717b549d59719b71b
2016-07-28 04:16:22 +00:00
adriant
b2cb4c403f TOTP auth not functional in python3
Fixing a byte>str conversion bug present in the TOTP
passcode generation function that was only present in python3
which rendered TOTP auth non-functional in python3.

Also adding a test to check passcode generation returns the
correct format.

Closes-Bug: #1607119

Change-Id: Ie052d559c4eb2577d35caa9f6e240664cf4cf399
2016-07-28 15:10:33 +12:00
Jenkins
3d9a1f1b97 Merge "Add schema validation to v2 create tenant" 2016-07-28 03:09:25 +00:00
Eric Brown
6ab44443d4 Invalid tls_req_cert constant as default
There are several occurances where the argument default of
tls_req_cert is set to 'demand'. This is an invalid option for the
function _common_ldap_initialization, which expects one of the values
of the dict LDAP_TLS_CERTS, not a key.

If tls_req_cert='demand' is given to _common_ldap_initialization,
you'll get:
   "LDAP TLS: invalid TLS_REQUIRE_CERT Option=demand"

Change-Id: I2da2c041bac25ca7ebab8c32b464164279a6bd69
2016-07-26 22:20:32 -07:00
Tin Lam
05f8578787 Add schema validation to v2 create tenant
Partially implements: bp schema-validation-extent

Change-Id: I67296656df073c01de2e26d64e798e76aae1cb9e
2016-07-27 03:47:07 +00:00
Jenkins
9d54eb33c1 Merge "Use quotes consistently in token controller" 2016-07-26 23:51:18 +00:00
Lance Bragstad
9c996413fd Use quotes consistently in token controller
I was perusing through the token controller and saw a few places where we use
double-quotes mixed with single-quotes. We typically stick to one or the other.

Change-Id: Ia56117fea2aa719b3877a4827048b936103b3b81
2016-07-26 17:04:35 +00:00
Dolph Mathews
9d01162c40 Add performance tuning documentation
Change-Id: Ia6ab8fbc0fa5c8f055ef0e913c32e4b285a2a6e2
2016-07-26 11:44:19 -04:00
Lance Bragstad
0b600cedf6 Allow V2TestCase to be tested against fernet and uuid
This helps make our switch to fernet as the default token provider easier.

This is an effort to break https://review.openstack.org/#/c/258650 into
smaller, more reviewable pieces.

Co-Authored-By: Raildo Mascena <raildo@lsd.ufcg.edu.br>
Co-Authored-By: Adam Young <ayoung@redhat.com>

Change-Id: I67121265cf06eb11586c90c37c6439bcdb28acf0
Partial-Bug: 1561054
2016-07-26 15:12:23 +00:00
Lance Bragstad
b77c5b789f Make AuthWithTrust testable against uuid and fernet
We should make AuthWithTrust something that is tested against both the uuid
token provider and the fernet token provider. This helps us move towards making
fernet the default token provider.

This is an effort to break https://review.openstack.org/#/c/258650 into
smaller, more reviewable pieces.

Co-Authored-By: Raildo Mascena <raildo@lsd.ufcg.edu.br>
Co-Authored-By: Adam Young <ayoung@redhat.com>

Change-Id: I0fd2187421fc677e7d422d4b449eec3056a134e9
Partial-Bug: 1561054
2016-07-26 15:12:15 +00:00
Jenkins
8a669fabad Merge "Make it so federated tokens are validated on v2.0" 2016-07-26 14:28:01 +00:00
Jenkins
4a8298d5b8 Merge "Improve os-federation docs" 2016-07-26 12:37:13 +00:00
Jenkins
96af93d361 Merge "Fix v2-ext API enabled documentation" 2016-07-26 03:16:44 +00:00
Clenimar Filemon
ab7a7458e1 Improve os-federation docs
- add /v3/ to all routes;
- switch from 'localhost:port' and 'identity:port' endpoints to
  'example.com/identity';
- fix typo.

Change-Id: If0d90ebab78e93fc9395b0e02436853a4ecbfa73
2016-07-25 22:39:23 -03:00
Jenkins
6881378755 Merge "Replace OpenStack LLC with OpenStack Foundation" 2016-07-25 23:19:18 +00:00
Jenkins
89c160dd81 Merge "Use freezegun in AssignmentInheritanceTestCase" 2016-07-25 22:46:27 +00:00
Jenkins
6723ba08c9 Merge "Only run KvsTokenCacheInvalidation against uuid" 2016-07-25 22:44:26 +00:00
Jenkins
321d7a8a42 Merge "Use freezegun in OSRevokeTests" 2016-07-25 22:39:12 +00:00
Jenkins
48b0ad1ccd Merge "refactor: make TestFetchRevocationList test uuid" 2016-07-25 22:39:01 +00:00
Jenkins
8b47d17ed7 Merge "refactor: make TestAuthExternalDefaultDomain test uuid/pki/pkiz" 2016-07-25 22:38:51 +00:00
Jenkins
663ff28d60 Merge "refactor: make TestAuthKerberos test pki/pkiz/uuid" 2016-07-25 22:38:40 +00:00
Jenkins
fc3585276f Merge "refactor: inherit AuthWithRemoteUser for other providers" 2016-07-25 22:34:05 +00:00
Jenkins
d57602c947 Merge "Run AuthWithToken against all token providers" 2016-07-25 22:22:48 +00:00
Jenkins
f47fe6247d Merge "Don't run TokenCacheInvalidation with Fernet" 2016-07-25 22:08:00 +00:00
Jenkins
84c0c74dd9 Merge "Refactor TestAuthExternalDomain to not inherit tests" 2016-07-25 22:05:58 +00:00
Colleen Murphy
62fb97f71c Fix v2-ext API enabled documentation
The 'enabled' key in the parameters list refers to a tenant, not a
user. The `/v2.0/users/{userId}/OS-KSADM/enabled` method is operating
on a user, so we should use the 'enabled_1' key. 'enabled_1' is not a
very descriptive name so let's call it 'enabled_user' instead.

Moreover, this parameter is required, so it does not make sense for it
to have a default when the user must supply a value, so this patch
modifies the 'enabled_1' (now called 'enabled_user') description to
reflect that.

Change-Id: I81a7c68d5000ca6acab74679b49eeb619a5b914e
2016-07-25 11:05:01 -07:00
Jenkins
b84b691915 Merge "Use freezegun to increment clock in test_v3_assignment" 2016-07-25 05:10:53 +00:00
Jenkins
94e83aff17 Merge "Add schema validation to create role" 2016-07-25 03:26:31 +00:00
Jenkins
7a8898d95b Merge "Added cache for id mapping manager" 2016-07-25 02:59:23 +00:00
Jenkins
a4580a8087 Merge "PCI-DSS Password strength requirements" 2016-07-23 03:58:34 +00:00
Jenkins
a1ba4a22f6 Merge "PCI-DSS Adds password_expires_at to API docs" 2016-07-22 23:17:17 +00:00
Jenkins
c05d287ee2 Merge "Migrate OS-FEDERATION from specs repo" 2016-07-22 18:21:32 +00:00
Ronald De Rose
dfd5d25910 PCI-DSS Adds password_expires_at to API docs
This patch adds a new user response attribute, password_expires_at,
to the Identity API v3 documentation.

Passord expires validation implementation:
https://review.openstack.org/333360

Depends-On: I07c10de627898d6ac79578dc24292ded4a2190f1
Partially-implements: blueprint pci-dss
Change-Id: I37136f79488d7469f0b8b24e3f5628899e40cac0
2016-07-22 17:47:27 +00:00