"Keystoneauth Extras"의 두 판 사이의 차이

 
(같은 사용자의 중간 판 2개는 보이지 않습니다)
1번째 줄: 1번째 줄:
==개요==
==개요==
{{소문자}}
[[분류: Keystoneauth]]
[[분류: Keystoneauth]]
;Extras
;Extras
;엑스트라
;엑스트라
https://docs.openstack.org/keystoneauth/latest/extras.html
https://docs.openstack.org/keystoneauth/latest/extras.html
----
Keystoneauth 플러그인의 확장성은 다양한 인증 메커니즘을 지원하도록 설계되어 있으며, 이러한 메커니즘은 업스트림 패키지에 포함되지 않아도 됩니다. 그러나 업스트림에서 지원하는 몇 가지 플러그인은 keystoneauth 패키지가 직접 의존할 수 없는 추가 의존성을 포함합니다.
이를 해결하기 위해 setuptools의 [https://setuptools.readthedocs.io/en/latest/setuptools.html#declaring-extras-optional-features-with-their-own-dependencies extras 의존성]을 사용하여 추가 플러그인을 설치합니다. 예를 들어, 추가 의존성을 가진 kerberos 플러그인을 사용하려면 다음과 같이 추가 의존성을 설치해야 합니다:
<syntaxhighlight lang='bash'>
pip install keystoneauth1[kerberos]
</syntaxhighlight>
관례상(필수는 아님) 추가 플러그인은 의존성과 동일한 이름을 가진 모듈을 keystoneauth1.extras 모듈에 위치시킵니다. 예시:
<syntaxhighlight lang='python'>
from keystoneauth1.extras import kerberos
</syntaxhighlight>
모듈에 접근하기 위해 필요한 의존성이 설치되어 있는지에 대한 keystoneauth 특정 점검은 없습니다. 필요한 의존성이 없을 때 표준 Python ImportError가 발생할 것으로 예상됩니다.


==예시==
==예시==
모든 엑스트라 플러그인은 다음 패턴을 따릅니다:
* 1. 플러그인 모듈을 임포트합니다.
* 2. 플러그인을 인스턴스화합니다.
* 3. 세션 객체를 전달하여 플러그인의 get_token 메소드를 호출하여 토큰을 얻습니다.
===Kerberos===
===Kerberos===
<code>Kerberos</code>를 사용하여 도메인 스코프 토큰 얻기:
<code>Kerberos</code>를 사용하여 도메인 스코프 토큰 얻기:

2024년 6월 23일 (일) 13:26 기준 최신판

1 개요[ | ]

Extras
엑스트라

https://docs.openstack.org/keystoneauth/latest/extras.html


Keystoneauth 플러그인의 확장성은 다양한 인증 메커니즘을 지원하도록 설계되어 있으며, 이러한 메커니즘은 업스트림 패키지에 포함되지 않아도 됩니다. 그러나 업스트림에서 지원하는 몇 가지 플러그인은 keystoneauth 패키지가 직접 의존할 수 없는 추가 의존성을 포함합니다.

이를 해결하기 위해 setuptools의 extras 의존성을 사용하여 추가 플러그인을 설치합니다. 예를 들어, 추가 의존성을 가진 kerberos 플러그인을 사용하려면 다음과 같이 추가 의존성을 설치해야 합니다:

pip install keystoneauth1[kerberos]

관례상(필수는 아님) 추가 플러그인은 의존성과 동일한 이름을 가진 모듈을 keystoneauth1.extras 모듈에 위치시킵니다. 예시:

from keystoneauth1.extras import kerberos

모듈에 접근하기 위해 필요한 의존성이 설치되어 있는지에 대한 keystoneauth 특정 점검은 없습니다. 필요한 의존성이 없을 때 표준 Python ImportError가 발생할 것으로 예상됩니다.

2 예시[ | ]

모든 엑스트라 플러그인은 다음 패턴을 따릅니다:

  • 1. 플러그인 모듈을 임포트합니다.
  • 2. 플러그인을 인스턴스화합니다.
  • 3. 세션 객체를 전달하여 플러그인의 get_token 메소드를 호출하여 토큰을 얻습니다.

2.1 Kerberos[ | ]

Kerberos를 사용하여 도메인 스코프 토큰 얻기:

from keystoneauth1.extras import kerberos
from keystoneauth1 import session

plugin = kerberos.Kerberos('http://example.com:5000/v3')
sess = session.Session(plugin)
token = plugin.get_token(sess)

언스코프 페더레이션 토큰 얻기:

from keystoneauth1.extras import kerberos
from keystoneauth1 import session

plugin = kerberos.MappedKerberos(
    auth_url='http://example.com:5000/v3', protocol='example_protocol',
    identity_provider='example_identity_provider')

sess = session.Session()
token = plugin.get_token(sess)

프로젝트 스코프 페더레이션 토큰 얻기:

from keystoneauth1.extras import kerberos
from keystoneauth1 import session

plugin = kerberos.MappedKerberos(
    auth_url='http://example.com:5000/v3', protocol='example_protocol',
    identity_provider='example_identity_provider',
    project_id='example_project_id')

sess = session.Session()
token = plugin.get_token(sess)
project_id = plugin.get_project_id(sess)
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}