로그인

로그인 프레임워크

앱 개발을 간소화해 주는 로그인 유틸리티.


제공: Shotgun Software
최신 버전: v1.2.2(알파)
버전 번호의 경우 유의적 버전 표준을 따릅니다.
시스템 이름: tk-framework-login

목차:

개요 요약

설명서

            클래스 로그인 API 참조

                  get_instance_for_namespace()

                  로그인 생성자

                  login()

                  logout()

            클래스 ShotgunLogin API 참조

                  get_login()

                  get_connection()

                  set_default_login()

                  set_default_site()

                  set_http_proxy()

설치, 업데이트 및 개발

구성 옵션

개요

정보 수집을 위한 표준 대화상자를 통해 로그인 정보를 안전하게 관리하기 위한 인터페이스입니다. Shotgun에 로그인하기 위한 구현도 포함되어 있습니다.

설명서

로그인 프레임워크는 서비스에 로그인하기 위한 인증 정보의 관리 표준을 구현합니다. 이는 하위 클래스로 분류되어 특정 서비스 로그인을 관리할 수 있는 추상적 기본 클래스(Login)와 Shotgun 인스턴스 로그인 관리를 위한 구현(ShotgunLogin)으로 이루어져 있습니다.

다음 대화상자 창도 포함됩니다.

이 대화상자는 프레임워크가 로그인 중인 서비스에 대한 인증 정보를 수집해야 할 때 표시됩니다. 기본적으로는 Shotgun 로그인에 대한 설정이지만 Login의 하위 클래스가 그 모양과 동작 요소를 수정할 수도 있습니다.

이 프레임워크는 표준 툴킷 프레임워크 또는 독립 실행형 Python 모듈(Toolkit Core에 대한 종속성 없음)로 사용될 수 있도록 설계되었습니다. 덕분에 이 프레임워크를 툴킷 환경을 찾아 초기화하기 위한 부트스트랩의 일부로 사용할 수 있습니다.

클래스 로그인 API 참조

서비스에 대한 로그인 정보를 저장할 때 추상화를 제공하는 추상 클래스입니다. 이 클래스는 저장하는 각 서비스에 대해 사이트 사양(예: 로그인할 URL), 로그인(예: 로그인하는 데 사용할 사용자 이름) 및 암호를 저장합니다. 사이트 및 로그인은 비-암호화 설정 파일에 저장되는 반면, 암호는 운영 중인 특정 구현을 사용하는 암호화 키링에 저장됩니다.

인터페이스를 사용하려면 구현으로부터 로그인 정보를 요청할 수 있어야 합니다.

    login_manager = LoginImplementation.get_instance_for_namespace("My Application")
    login_info = login_manager.login()

로그인 정보가 이미 수집되어 있는 경우 그 정보가 반환됩니다. 저장된 값이 성공적으로 인증되면 결과 로그인 정보가 반환됩니다. 그렇지 않으면 사이트/로그인/암호를 수집하기 위한 대화상자가 사용자에게 표시됩니다.

하위 클래스로 분류하려면 최소한 커넥션 정보의 유효성을 검증해야 하는 _site_connect를 구현해야 합니다.

기본적으로 공용 설정은 QApplication의 applicationName 및 organizationName을 사용하여 설정 파일을 저장할 위치를 파악하는 Qt의 QSettings에 의해 저장됩니다. QSettings는 하위 클래스에서 _get_settings 메서드를 구현하여 재정의할 수 있습니다.

기본적으로 시스템에서 사용되는 키링은 이름이 사이트 뒤에 지정되고(예: http://www.google.com에 로그인하는 경우 "www.google.com.login"), 이 키가 로그인으로 사용됩니다. 이 기본값은 하위 클래스에서 _get_keyring_values 메서드를 구현하여 재정의할 수 있습니다.

기본 팝업 대화상자는 _dialog_class의 값을 변경하여 재정의할 수 있습니다. _dialog_kwargs의 값은 대화상자 생성자에게 전달됩니다. 기본 대화상자에 유효한 인자는 login_dialog.LoginDialog의 설명서를 참조하십시오.

get_instance_for_namespace()

지정된 네임스페이스의 Login 인스턴스를 반환하는 클래스 메서드입니다. 인스턴스가 이미 존재하는 경우 그 인스턴스가 반환됩니다. 이는 로그인 관리자의 인스턴스를 쉽게 재사용할 수 있게 해 주는 팩토리의 역할을 합니다.

매개변수 및 반환값

  • str namespace - 로그인 관리자를 위한 검색 역할을 하는 문자열.
  • 반환값: 로그인 관리자의 인스턴스를 반환합니다.

    login_manager = get_instance_for_namespace("my-app")

로그인 생성자

로그인 관리자를 초기화합니다.

Login()

login()

현재 인증된 로그인의 로그인 정보를 반환합니다.

이는 저장된 값을 검토하여 유효한 로그인이 캐시되어 있는지 확인합니다. 캐시되어 있는 유효한 로그인 정보가 없다면 로그인 대화상자가 표시됩니다.

매개변수 및 반환값

  • str site - 로그인을 가져올 대상 사이트(기본 사이트를 암시하는 항목 없음)
  • str dialog_message - 로그인 대화상자에 표시되는 메시지
  • bool force_dialog - True인 경우, 일부 유효한 자격 증명이 검색되더라도 대화상자가 팝업됩니다.
  • 반환값: 실패 시 아무것도 반환되지 않고, 성공 시 구현별 표현이 반환됩니다.

logout()

현재 커넥션에서 로그아웃합니다.

이렇게 하면 캐시된 모든 값과 저장된 암호가 지워집니다.

매개변수 및 반환값

  • str site - 로그아웃할 사이트(기본 사이트를 암시하는 항목 없음)

클래스 ShotgunLogin API 참조

Shotgun 사이트의 로그인 관리를 구현하는 Login 클래스에 대한 편리한 래퍼입니다. 여기 설명되어 있는 항목뿐 아니라 Login의 모든 메서드도 사용할 수 있습니다.

get_login()

현재 로그인의 HumanUser를 반환합니다. 그렇지 않으면 로그인처럼 작동합니다.

매개변수 및 반환값

  • str site - 로그인을 가져올 대상 사이트(기본 사이트를 암시하는 항목 없음)
  • str dialog_message - 로그인 대화상자에 표시되는 메시지
  • bool force_dialog - True인 경우, 일부 유효한 자격 증명이 검색되더라도 대화상자가 팝업됩니다.
  • 반환값: 실패 시 아무것도 반환하지 않고, 성공 시 로그인한 HumanUser의 Shotgun 엔티티 스타일 사전을 반환합니다.

get_connection()

현재 로그인의 커넥션을 반환합니다. 그렇지 않으면 로그인처럼 작동합니다.

매개변수 및 반환값

  • str site - 로그인을 가져올 대상 사이트(기본 사이트를 암시하는 항목 없음)
  • str dialog_message - 로그인 대화상자에 표시되는 메시지
  • bool force_dialog - True인 경우, 일부 유효한 자격 증명이 검색되더라도 대화상자가 팝업됩니다.
  • 반환값: 실패 시 아무것도 반환하지 않고 성공 시 Shotgun 커넥션을 반환합니다.

set_default_login()

로그인 대화상자의 로그인 필드에 대한 기본값을 설정합니다.

매개변수 및 반환값

  • str login - 필드를 설정할 문자열

set_default_site()

로그인 대화상자의 사이트 필드에 대한 기본값을 설정합니다.

매개변수 및 반환값

  • str login - 필드를 설정할 문자열

set_http_proxy()

Shotgun에 연결할 때 사용할 프록시를 설정합니다.

매개변수 및 반환값

  • str http_proxy - https://github.com/shotgunsoftware/python-api/wiki/Reference%3A-Methods#shotgun에 설명되어 있는 대로 Shotgun 생성자에 전달되는 문자열

설치 및 업데이트

최신 버전으로 업데이트

프로젝트에 이 항목이 이미 설치되어 있는 경우 최신 버전을 얻으려면 update 명령을 실행할 수 있습니다. 특정 프로젝트와 함께 제공되는 tank 명령을 탐색하여 다음과 같이 실행할 수 있습니다.

> cd /my_tank_configs/project_xyz
> ./tank updates

또는 스튜디오 tank 명령을 실행하고 업데이트 확인을 실행할 프로젝트 이름을 지정할 수 있습니다.

> tank Project XYZ updates

협업 및 개선

Shotgun Pipeline Toolkit에 액세스할 수 있다면 모든 앱, 엔진 및 프레임워크가 저장 및 관리되는 Github에서 그 소스 코드에도 액세스할 수 있습니다. 이러한 항목을 자유롭게 개선하여 향후 독립적인 개발을 위한 기반으로 사용하고 변경 후 다시 풀 리퀘스트를 제출하거나, 아니면 그냥 조금만 손을 보고 어떻게 빌드되었는지, 툴킷이 어떻게 작동하는지 확인해 보십시오. 이 코드 리포지토리는 https://github.com/shotgunsoftware/tk-framework-login에서 액세스할 수 있습니다.

특별 요구 사항

  • 이 기능을 이용하려면 Shotgun Pipeline Toolkit Core API 버전 v0.14.58 이상이 필요합니다.

구성

구성이 필요하지 않습니다.

이 항목에는 어떠한 구성 옵션도 없습니다!

팔로우

0 댓글

댓글을 남기려면 로그인하세요.