OpenStack Identity (Keystone) Client
Find a file
Vishakha Agarwal 319fd1a532 Blacklist bandit 1.6.0 & cap sphinx for 2.7
The latest version of bandit has broken directory
exclusion, so multiple test files are getting flagged.
This change blocks version 1.6.0 while this issue is
fixed for 1.6.1. This change also caps sphinx
at <2.0.0 for python version 2.7.

This also updates the keyring version.

Change-Id: I69a86ef21791698e4dd749fe5640fcdc7df1b0fc
2019-07-04 04:46:58 +00:00
doc Blacklist bandit 1.6.0 & cap sphinx for 2.7 2019-07-04 04:46:58 +00:00
examples/pki Update json module to jsonutils 2019-02-25 11:35:14 +00:00
keystoneclient Follow bandit B105: hardcoded_password_string 2019-06-26 16:05:43 +05:30
playbooks Fix keystoneclient-devstack-functional job 2018-11-28 14:45:14 +00:00
releasenotes Update master for stable/stein 2019-03-18 14:52:14 +00:00
.coveragerc Updated coverage configuration file 2016-10-19 12:38:55 +00:00
.gitignore Switch to stestr 2018-07-11 09:59:08 +07:00
.gitreview OpenDev Migration Patch 2019-04-19 19:39:43 +00:00
.mailmap Add mailmap entry 2014-05-07 12:12:43 -07:00
.stestr.conf Switch to stestr 2018-07-11 09:59:08 +07:00
.zuul.yaml Add Python 3 Train unit tests 2019-06-28 06:36:36 +00:00
babel.cfg enabling i18n with Babel 2012-09-29 16:03:23 -07:00
bindep.txt Use https for *.openstack.org references 2017-02-05 20:46:32 -08:00
CONTRIBUTING.rst Use https for *.openstack.org references 2017-02-05 20:46:32 -08:00
HACKING.rst Update URLs in documents according to document migration 2017-07-14 09:56:01 +08:00
LICENSE Initial commit. 2011-10-25 16:50:08 -07:00
lower-constraints.txt Switch to stestr 2018-07-11 09:59:08 +07:00
README.rst Replace git.openstack.org URLs with opendev.org URLs 2019-04-24 19:16:55 +08:00
requirements.txt Updated from global requirements 2018-03-15 07:58:00 +00:00
setup.cfg Drop py35 jobs 2019-03-01 11:35:16 +01:00
setup.py Updated from global requirements 2017-03-22 22:27:35 +00:00
test-requirements.txt Blacklist bandit 1.6.0 & cap sphinx for 2.7 2019-07-04 04:46:58 +00:00
tox.ini Add Python 3 Train unit tests 2019-06-28 06:36:36 +00:00

========================
Team and repository tags
========================

.. image:: https://governance.openstack.org/tc/badges/python-keystoneclient.svg
    :target: https://governance.openstack.org/tc/reference/tags/index.html

.. Change things from this point on

Python bindings to the OpenStack Identity API (Keystone)
========================================================

.. image:: https://img.shields.io/pypi/v/python-keystoneclient.svg
    :target: https://pypi.org/project/python-keystoneclient/
    :alt: Latest Version

This is a client for the OpenStack Identity API, implemented by the Keystone
team; it contains a Python API (the ``keystoneclient`` module) for
OpenStack's Identity Service. For command line interface support, use
`OpenStackClient`_.

* `PyPi`_ - package installation
* `Online Documentation`_
* `Launchpad project`_ - release management
* `Blueprints`_ - feature specifications
* `Bugs`_ - issue tracking
* `Source`_
* `Specs`_
* `How to Contribute`_
* `Release Notes`_

.. _PyPi: https://pypi.org/project/python-keystoneclient
.. _Online Documentation: https://docs.openstack.org/python-keystoneclient/latest/
.. _Launchpad project: https://launchpad.net/python-keystoneclient
.. _Blueprints: https://blueprints.launchpad.net/python-keystoneclient
.. _Bugs: https://bugs.launchpad.net/python-keystoneclient
.. _Source: https://opendev.org/openstack/python-keystoneclient
.. _OpenStackClient: https://pypi.org/project/python-openstackclient
.. _How to Contribute: https://docs.openstack.org/infra/manual/developers.html
.. _Specs: https://specs.openstack.org/openstack/keystone-specs/
.. _Release Notes: https://docs.openstack.org/releasenotes/python-keystoneclient

.. contents:: Contents:
   :local:

Python API
----------

By way of a quick-start::

    >>> from keystoneauth1.identity import v3
    >>> from keystoneauth1 import session
    >>> from keystoneclient.v3 import client
    >>> auth = v3.Password(auth_url="http://example.com:5000/v3", username="admin",
    ...                     password="password", project_name="admin",
    ...                     user_domain_id="default", project_domain_id="default")
    >>> sess = session.Session(auth=auth)
    >>> keystone = client.Client(session=sess)
    >>> keystone.projects.list()
        [...]
    >>> project = keystone.projects.create(name="test", description="My new Project!", domain="default", enabled=True)
    >>> project.delete()