찾다
백엔드 개발파이썬 튜토리얼단일 사인온 (SSO)이 설명되었습니다

단일 사인온 (SSO)이 설명되었습니다 키 테이크 아웃

SSO (Single Sign-on) (SSO)는 사용자가 신원을 한 번만 인증 한 후 여러 서비스에 액세스 할 수있는 프로세스이며, 이는 비밀번호 또는 기타 시스템을 통해 신원을 반복적으로 확인할 필요가 없어집니다. 다른 서비스와 상호 작용하는 제품을 개발하거나 타사 서비스를 사용할 때 SSO를 구현하는 것은 사용자가 각 서비스에 별도로 로그인 할 필요가 없도록하십시오.

. SSO 프로세스는 서비스마다 약간 다양하지만 기본 아이디어는 동일하게 유지됩니다. 토큰 생성 및 검증. SSO와 관련된 위험을 완화하기 위해 다단계 인증 및 일반 암호 업데이트와 같은 강력한 보안 조치를 구현해야합니다.

대중을위한 제품을 개발할 때 다른 서비스와 상호 작용하지 않는 완전히 독립형 제품을 생각해내는 것은 매우 드 rare니다. 타사 서비스를 사용하는 경우 사용자 인증은 비교적 어려운 작업입니다. 응용 프로그램마다 사용자를 인증하기위한 다른 메커니즘이 다르므로. 이 문제를 해결하는 한 가지 방법은 단일 사인 켜기 또는 SSO를 통한 것입니다.
    SSO (Single Sign On)는 사용자 인증 (즉, 로그인)을 한 번만 살펴본 후 여러 서비스에 액세스 할 수있는 프로세스입니다. 여기에는 1 차 서비스에 로그인 한 후 사용자가 허가 한 모든 서비스에 대한 인증이 포함됩니다. 다른 이점 중에서도 SSO는 비밀번호 또는 기타 인증 시스템을 통해 신원을 반복해서 확인하는 단조로운 작업을 피합니다. SSO를 더 자세히 살펴 보겠습니다. 매우 잘 알려진 서비스를 사용하여 용도와 혜택을 보여줄 것입니다. 인증 프로세스 SSO의 기본 프로세스는 다음과 같습니다
  • 첫 번째 단계는 기본 서비스 (예 : Facebook 또는 Google)에 로그인하는 것입니다. 새 서비스를 방문하면 원본 (또는 부모) 서비스로 리디렉션하여 해당 로그인한지 확인합니다.

    OTP (일회성 비밀번호) 토큰이 반환됩니다

    그런 다음 OTP 토큰은 부모의 서버에서 새로운 서비스로 확인되며 성공적인 검증 후에 만 ​​사용자에게 입력 한 후에 만 ​​있습니다.

  • .
  • SSO의 API를 만드는 것은 지루한 작업이지만, 특히 보안을 처리하는 데있어 구현은 상대적으로 쉬운 작업입니다!
  • SSO 사용의 좋은 예는 Google 서비스에 있습니다. YouTube, Gmail, Google, Google Analytics 등과 같은 다른 서비스에 액세스하려면 하나의 기본 Google 계정에만 가입해야합니다.자신의 제품에 대한 자신의 제품을 구축 할 때 모든 구성 요소가 동일한 인증을 사용하도록해야합니다. 모든 서비스가 자신의 코드 기반에 국한 될 때 쉽게 수행 할 수 있습니다. 그러나 Disqus Comments System 및 Freshdesk와 같은 인기있는 서비스를 통해 고객 관계 관리를위한 FreshDesk를 사용하면 처음부터 자신의 것을 만드는 대신 사용하는 것이 좋습니다. 그러나 그러한 타사 서비스를 사용하면 문제가 발생합니다. 코드는 해당 서버에서 호스팅되므로 사용자는 웹 사이트에 로그인하더라도 서비스에 명시 적으로 로그인해야합니다. 언급 한 바와 같이 솔루션은 SSO의 구현입니다 이상적으로는 공개 및 사적 인 한 쌍의 키가 제공됩니다. 로그인 한 사용자에 대한 토큰을 생성하고 검증을 위해 공개 키와 함께 서비스로 보냅니다. 확인 후 사용자는 자동으로 서비스에 로그인됩니다. 이것을 더 잘 이해하려면 실제 예를 사용해 봅시다.

    disqus sso disqus는 웹 사이트에 인기있는 의견 호스팅 서비스로 소셜 네트워크 통합, 중재 도구, 분석 및 심지어 의견을 내보낼 수있는 기능과 같은 다양한 기능을 제공합니다. 그것은 Ycombinator 스타트 업으로 시작하여 세계에서 가장 인기있는 웹 사이트 중 하나로 성장했습니다!

    Disqus 댓글 시스템이 귀하의 페이지에 포함되므로 사용자가 웹 사이트에 이미 로그인 한 경우 Disqus 내에서 두 번째로 로그인 할 필요가없는 것이 중요합니다. Disqus에는 SSO를 통합하는 방법에 대한 광범위한 문서가있는 API가 있습니다. 당신은 먼저 개인 및 공개 Disqus API 키를 사용하여 로그인 한 사용자에 대해 remote_auth_s3라는 키를 생성합니다. SSO를 Disqus 내에서 무료 애드온으로 등록 할 때 공개 및 개인 키가 제공됩니다. 는 사용자의 정보 (ID, 사용자 이름 및 이메일)를 JSON으로 인증하기 위해 DISQUS에 전달합니다. 페이지에서 Disqus 시스템을 렌더링하면서 사용해야 할 메시지를 생성합니다. 더 잘 이해하려면 파이썬으로 작성된 예를 살펴 보겠습니다.

    PHP, Ruby 및 Python과 같은 몇 가지 인기있는 언어로 된 코드 예제는 Github의 Disqus에 의해 제공됩니다. 메시지 생성 샘플 파이썬 코드 (Github에서 웹 사이트의 사용자로 가입하도록 찾을 수 있습니다.

    disqus 주석 초기화 그런 다음 JavaScript 요청 에서이 생성 된 토큰과 공개 키와 함께 Disqus를 보내십시오. 인증이 확인되면 생성 된 댓글 시스템에 사용자가 이미 로그인되었습니다. 문제가 있으면 Disqus Developers Google Group에 도움을 요청할 수 있습니다. 우리는 Python/Django에서 개발 된 블로그의 디렉토리 인 Blog Bowl에서 SSO의 구현을 볼 수 있습니다. 웹 사이트에 로그인하면 Disqus 댓글 시스템이 렌더링되면 로그인해야합니다. 이 예에서 Person Object는 ID (사이트의 각 사람마다 고유 한), 이메일 및 pen_name을 저장합니다. 메시지는 아래와 같이 생성됩니다

    프론트 엔드에서는이 변수를 인쇄하여 스크립트를 실행합니다. 라이브 데모의 경우 블로그 보울 에서이 게시물을 방문하여 맨 아래에 렌더링 된 주석을 확인할 수 있습니다. 당연히 로그인하지 않습니다.

    <span>import base64
    </span><span>import hashlib
    </span><span>import hmac
    </span><span>import simplejson
    </span><span>import time
    </span>
    DISQUS_SECRET_KEY <span>= '123456'
    </span>DISQUS_PUBLIC_KEY <span>= 'abcdef'
    </span>
    <span>def get_disqus_sso(user):
    </span>    <span># create a JSON packet of our data attributes
    </span>    data <span>= simplejson.dumps({
    </span>        <span>'id': user['id'],
    </span>        <span>'username': user['username'],
    </span>        <span>'email': user['email'],
    </span>    <span>})
    </span>    <span># encode the data to base64
    </span>    message <span>= base64.b64encode(data)
    </span>    <span># generate a timestamp for signing the message
    </span>    timestamp <span>= int(time.time())
    </span>    <span># generate our hmac signature
    </span>    sig <span>= hmac.HMAC(DISQUS_SECRET_KEY, '%s %s' % (message, timestamp), hashlib.sha1).hexdigest()
    </span>
    <span># return a script tag to insert the sso message
    </span>    <span>return """<script type="text/javascript">
    </script></span><span>    var disqus_config = function() {
    </span><span>        this.page.remote_auth_s3 = "%(message)s %(sig)s %(timestamp)s";
    </span><span>        this.page.api_key = "%(pub_key)s";
    </span><span>    }
    </span><span>    """ % dict(
    </span>        message<span>=message,
    </span>        timestamp<span>=timestamp,
    </span>        sig<span>=sig,
    </span>        pub_key<span>=DISQUS_PUBLIC_KEY,
    </span>    <span>)</span>
    다음, 블로그 보울에 로그인하고 같은 게시물을 다시 방문하십시오 (효과를 보려면 로그인해야합니다). 아래의 주석 시스템에 로그인된다는 점에 주목하십시오.

    블로그 보울이 제공하는 또 다른 흥미로운 기능은 콘텐츠를 게시하는 동안 익명 성입니다 (이 게시물과 같이). Quora와 같은 익명 사용자로서 Disqus에 대한 의견에 답장을 게시하기를 원하는 상황을 생각해보십시오. 우리는 쉬운 길을 떠나 신분증에 많은 수를 추가했습니다. 사용자를위한 고유 한 이메일을 연관시키기 위해 (사용자의 다른 의견과 함께 표시되지 않도록) 고유 한 이메일도 생성됩니다. 이것은 익명의 의견을 함께 유지하지만 다른 사용자의 원본 프로필이나 익명의 의견과 결합하지는 않습니다. 단일 사인온 (SSO)이 설명되었습니다

    그리고 여기에 코드가 있습니다 :

    결론 다른 서비스에 대한 SSO 프로세스는 약간 다양하지만 그 뒤에있는 기본 아이디어는 동일합니다. 토큰을 생성하고 검증하십시오! 이 게시물이 응용 프로그램이 SSO를 통합하는 방법에 대한 통찰력을 얻는 데 도움이 되었기를 바랍니다. 아마도 SSO를 직접 구현하는 데 도움이 될 것입니다. 수정, 질문이 있거나 SSO와 공유 할 자신의 경험이 있으면 자유롭게 의견을 제시하십시오.

    . 단일 사인온 (SSO) 에 대한 질문이 자주 묻습니다

    SSO (Single Sign-on)의 주요 목적은 무엇입니까? 단일 사인온 (SSO)이 설명되었습니다 SSO (Single Sign-on)의 주요 목적은 사용자가 여러 응용 프로그램 또는 웹 사이트에 액세스 할 수 있도록하여 사용자 인증 프로세스를 단순화하는 것입니다. 단일 로그인 자격 증명 세트가 있습니다. 이를 통해 여러 사용자 이름과 비밀번호를 기억할 필요가 없어서 사용자 편의성과 생산성을 향상시킵니다. SSO는 또한 비밀번호 잘못 관리 및 무단 액세스의 가능성을 줄임으로써 보안을 향상시킵니다. SSO (Single Sign-on)는 어떻게 작동합니까?

    SSO는 여러 응용 프로그램이나 웹 사이트간에 신뢰할 수있는 관계를 설정하여 작동합니다. 사용자가 하나의 응용 프로그램에 로그인하면 SSO 시스템은 사용자의 자격 증명을 인증하고 보안 토큰을 발행합니다. 이 토큰은 SSO 시스템 내의 다른 응용 프로그램에 대한 사용자를 인증하는 데 사용되어 여러 로그인이 필요하지 않습니다.

    단일 사인온 (SSO)을 사용하면 어떤 이점이 있습니까?

    . SSO는 몇 가지 이점을 제공합니다. 여러 로그인의 필요성을 줄임으로써 시간을 절약하고 좌절감을 줄임으로써 사용자 경험을 단순화합니다. 또한 비밀번호 관련 위반 위험을 최소화하여 보안을 향상시킵니다. 또한 비밀번호 재설정 요청 수를 줄임으로써 IT 비용을 줄일 수 있습니다.

    단일 사인온 (SSO)과 관련된 위험이 있습니까?

    SSO도 많은 이점을 제공하지만 IT도 제공합니다. 잠재적 인 위험이 있습니다. 사용자의 SSO 자격 증명이 손상되면 공격자는 해당 자격 증명에 연결된 모든 응용 프로그램에 액세스 할 수 있습니다. 따라서 이러한 위험을 완화하기 위해 다단계 인증 및 일반 암호 업데이트와 같은 강력한 보안 조치를 구현하는 것이 중요합니다.

    단일 사인온 (SSO) 및 다중 인증 인증의 차이점은 무엇입니까 ( mfa)?

    SSO와 MFA는 모두 인증 방법이지만 다른 목적을 수행합니다. SSO는 사용자가 단일 자격 증명 세트로 여러 응용 프로그램에 액세스 할 수 있도록하여 로그인 프로세스를 단순화합니다. 반면에 MFA는 액세스 권한을 부여하기 전에 사용자가 두 개 이상의 식별 식별을 제공하도록 요구함으로써 보안을 향상시킵니다.

    단일 사인온 (SSO)은 모바일 애플리케이션과 함께 사용할 수 있습니까? , SSO는 모바일 애플리케이션과 함께 사용할 수 있습니다. 많은 SSO 솔루션은 모바일 지원을 제공하여 사용자가 단일 자격 증명 세트로 모바일 장치의 여러 앱에 액세스 할 수 있도록합니다.

    단일 사인 온 (SSO)은 사용자 경험을 어떻게 향상 시키는가? 로그인 프로세스를 단순화하여 사용자 경험을 향상시킵니다. 사용자는 한 가지 자격 증명 세트 만 기억하면 잊혀진 암호의 좌절감을 줄입니다. 또한 다른 애플리케이션에 액세스 할 때 사용자가 자격 증명을 반복적으로 입력 할 필요가 없으므로 시간을 절약합니다.

    단일 사인온 (SSO)에서 혜택을 누릴 수있는 산업은 무엇입니까?

    사실상 모든 산업이 할 수 있습니다. SSO의 혜택. 의료, 교육, 금융 및 기술과 같은 여러 응용 프로그램에 크게 의존하는 산업은 특히 SSO가 제공하는 편의성과 보안의 혜택을 누릴 수 있습니다. SSO (Single Sign-On)는 보안을 어떻게 향상 시키는가?

    SSO는 사용자가 기억하고 관리 해야하는 비밀번호 수를 줄임으로써 보안을 향상시킵니다. 이것은 사이버 공격의 일반적인 목표 인 약하거나 재사용 된 비밀번호의 가능성을 감소시킵니다. 또한 많은 SSO 솔루션은 사용자 데이터를 추가로 보호하기 위해 다중 인증 인증 및 암호화와 같은 추가 보안 조치를 통합합니다.

    단일 사인온 (SSO)을 기존 시스템과 통합 할 수 있습니까? > 예, 대부분의 SSO 솔루션은 기존 시스템과 통합 될 수 있습니다. 그러나 통합 프로세스는 특정 SSO 솔루션 및 시스템에 따라 다를 수 있습니다. 부드럽고 안전한 통합을 보장하기 위해 숙련 된 IT 팀 또는 SSO 제공 업체와 협력하는 것이 중요합니다.

위 내용은 단일 사인온 (SSO)이 설명되었습니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
Python의 병합 목록 : 올바른 메소드 선택Python의 병합 목록 : 올바른 메소드 선택May 14, 2025 am 12:11 AM

Tomergelistsinpython, youcanusethe operator, extendmethod, listcomprehension, oritertools.chain, 각각은 각각의 지위를 불러 일으킨다

Python 3에서 두 목록을 연결하는 방법은 무엇입니까?Python 3에서 두 목록을 연결하는 방법은 무엇입니까?May 14, 2025 am 12:09 AM

Python 3에서는 다양한 방법을 통해 두 개의 목록을 연결할 수 있습니다. 1) 작은 목록에 적합하지만 큰 목록에는 비효율적입니다. 2) 메모리 효율이 높지만 원래 목록을 수정하는 큰 목록에 적합한 확장 방법을 사용합니다. 3) 원래 목록을 수정하지 않고 여러 목록을 병합하는 데 적합한 * 운영자 사용; 4) 메모리 효율이 높은 대형 데이터 세트에 적합한 itertools.chain을 사용하십시오.

Python은 문자열을 연결합니다Python은 문자열을 연결합니다May 14, 2025 am 12:08 AM

join () 메소드를 사용하는 것은 Python의 목록에서 문자열을 연결하는 가장 효율적인 방법입니다. 1) join () 메소드를 사용하여 효율적이고 읽기 쉽습니다. 2)주기는 큰 목록에 비효율적으로 운영자를 사용합니다. 3) List Comprehension과 Join ()의 조합은 변환이 필요한 시나리오에 적합합니다. 4) READE () 방법은 다른 유형의 감소에 적합하지만 문자열 연결에 비효율적입니다. 완전한 문장은 끝납니다.

파이썬 실행, 그게 뭐야?파이썬 실행, 그게 뭐야?May 14, 2025 am 12:06 AM

pythonexecutionissprocessoftransformingpythoncodeintoExecutableInstructions.1) the -interreadsTheCode, ConvertingItintoByTecode, thethepythonVirtualMachine (pvm)을 실행합니다

파이썬 : 주요 기능은 무엇입니까?파이썬 : 주요 기능은 무엇입니까?May 14, 2025 am 12:02 AM

Python의 주요 특징은 다음과 같습니다. 1. 구문은 간결하고 이해하기 쉽고 초보자에게 적합합니다. 2. 개발 속도 향상, 동적 유형 시스템; 3. 여러 작업을 지원하는 풍부한 표준 라이브러리; 4. 광범위한 지원을 제공하는 강력한 지역 사회와 생태계; 5. 스크립팅 및 빠른 프로토 타이핑에 적합한 해석; 6. 다양한 프로그래밍 스타일에 적합한 다중-파라 디그 지원.

파이썬 : 컴파일러 또는 통역사?파이썬 : 컴파일러 또는 통역사?May 13, 2025 am 12:10 AM

Python은 해석 된 언어이지만 편집 프로세스도 포함됩니다. 1) 파이썬 코드는 먼저 바이트 코드로 컴파일됩니다. 2) 바이트 코드는 Python Virtual Machine에 의해 해석되고 실행됩니다. 3)이 하이브리드 메커니즘은 파이썬이 유연하고 효율적이지만 완전히 편집 된 언어만큼 빠르지는 않습니다.

루프 대 루프를위한 파이썬 : 루프시기는 언제 사용해야합니까?루프 대 루프를위한 파이썬 : 루프시기는 언제 사용해야합니까?May 13, 2025 am 12:07 AM

USEAFORLOOPHENTERATINGOVERASERASERASPECIFICNUMBEROFTIMES; USEAWHILLOOPWHENTINUTIMONDITINISMET.FORLOOPSAREIDEALFORKNOWNSEDINGENCENCENS, WHILEWHILELOOPSSUITSITUATIONS WITHERMINGEDERITERATIONS.

파이썬 루프 : 가장 일반적인 오류파이썬 루프 : 가장 일반적인 오류May 13, 2025 am 12:07 AM

Pythonloopscanleadtoerrors likeinfiniteloops, modifyinglistsdizeration, off-by-by-byerrors, zero-indexingissues, andnestedloopineficiencies.toavoidthese : 1) aing'i

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SecList

SecList

SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

맨티스BT

맨티스BT

Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.