pythongssapi / pythongssapi/python-gssapi
The Eternal List Of Extension Implementation
オープン
まだ誰も着手していません。
enhancement
extension
- 主要言語
- Python
- スター
- 116
- フォーク
- 55
- 平均マージ
- 1日 24分
- マージ済み PR(30日)
- 2
説明
So, I went and compared the gssapi.h and gssapi_ext.h files with Python-GSSAPI to look for any extensions and/or additional RFCs that we missed.
Extensions (as indicated by being in gssapi_ext.h, for the most part)
Solaris
- buffer GSS_C_ATTR_LOCAL_LOGIN_USER
- gss_localname ( #49 )
- gss_pname_to_uid ( #49 )
- gss_userok ( #49 )
- gss_authorize_localname ( #49 )
- gss_acquire_cred_with_password ( #5 )
- gss_add_cred_with_password ( #5 )
GGF (Global Grid Forum) ( #51 )
- gss_inquire_sec_context_by_oid
- gss_inquire_cred_by_oid
- gss_set_sec_context_option
- gssapi_mech_invoke ??
- gss_import_cred (GGF variant, nobody implements this)
- gss_export_cred (GGF variant, nobody implements this)
AEAD / SSPI (DCE)
- gss_wrap_aead ( #6 )
- gss_unwrap_aead ( #6 )
- OID GSS_C_INQ_SSPI_SESSION_KEY
- gss_complete_auth_token
- gss_wrap_iov ( #6 )
- gss_unwrap_iov ( #6 )
- gss_wrap_iov_length ( #6 )
IOV MIC
- gss_get_mic_iov ( #6 )
- gss_get_mic_iov_length ( #6 )
- gss_verify_mic_iov ( #6 )
Services4User
- gss_acquire_cred_impersonate_name
- gss_add_cred_impersonate_name
Naming Extensions (actually RFC 6680)
- OID GSS_C_NT_COMPOSITE_EXPORT
- gss_display_name_ext
- gss_inquire_name
- gss_get_name_attribute
- gss_set_name_attribute
- gss_delete_name_attribute
- gss_export_name_composite
Capsulate (draft-josefsson-gss-capsulate)
- gss_encapsulate_token
- gss_decapsulate_token
- gss_oid_equal
Cred Store
- gss_acquire_cred_from
- gss_add_cred_from
- gss_store_cred_into
Cred Import/Export
- gss_export_cred ( #25 )
- gss_import_cred ( #25 )
Credentials Options (see https://github.com/pythongssapi/python-gssapi/issues/51#issuecomment-357022036)
- gss_set_cred_option
Additional RFCs (in gssapi.h)
RFC 4401 (Pseduo-Random Generators)
- gss_pseudo_random
RFC 5588 (Store Cred)
- gss_store_cred
RFC 4178 (SPNEGO)
- gss_set_neg_mechs ( #50 )
- gss_get_neg_mechs (NOT ACTUALLY PRESENT)
RFC 5587 (Mechanism Inquiry)
- gss_indicate_mechs_by_attrs
- gss_inquire_attrs_for_mech
- gss_display_mech_attr
RFC 5801 (GSSAPI-SASL Naming)
- gss_inquire_saslname_for_mech
- gss_inquire_mech_for_saslname
Mechanism Specific Extensions
Krb5 Specific Extensions (gssapi_krb5.h) (#75)
- GSS_KRB5_NT_PRINCIPAL_NAME
- gss_krb5_ccache_name
- gss_krb5_copy_ccache (use case unclear, deprecated on macOS)
- gss_krb5_get_tkt_flags
- gss_krb5_set_allowable_enctypes
- gss_krb5_export_lucid_sec_context
- gss_krb5_free_lucid_sec_context
- gsskrb5_extract_authz_data_from_sec_context
- gsskrb5_extract_authtime_from_sec_context
The following functionality is also available through the cred_store API
extensions so we may elect not to implement them at all:
- gss_krb5_set_cred_rcache (not implemented by Heimdal)
- gss_krb5_import_cred (implemented because Heimdal doesn't support cred store extensions)
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
この issue では、gssapi.h と gssapi_ext.h を Python-GSSAPI と比較し、gss_pseudo_random や gss_encapsulate_token を含む、未確認の拡張を多数列挙しています。まず、未確認の項目を 1 つ選び、参照されている header と、提供されている場合はリンク先の issue を読みます。完了の定義は、合意した拡張を 1 つ実装し、その動作を検証することにするべきですが、この issue ではテストパスも範囲の上限も指定されていません。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- python
- 領域
- authentication, security
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 25/100