개요

시스템 관리자는 Adobe Admin Console을 사용하여 단일 사인온(SSO)을 위해 Federated ID를 통해 로그인에 사용할 도메인을 구성할 수 있습니다.  도메인이 확인되면 사용자가 Creative Cloud에 로그인할 수 있도록 도메인을 포함하는 디렉토리가 구성됩니다. 사용자는 ID 공급자(IdP)를 통해 해당 도메인 내의 전자 메일 주소를 사용하여 로그인할 수 있습니다. 프로세스는 회사 네트워크에서 실행되고 인터넷에서 액세스할 수 있는 소프트웨어 서비스로 프로비저닝되거나, SAML 프로토콜을 사용하여 보안 통신을 통해 사용자 로그인 세부사항을 확인할 수 있게 해 주는 타사에서 호스팅하는 클라우드 서비스로 프로비저닝됩니다.

이러한 IdP 중 하나가 Shibboleth입니다. Shibboleth를 사용하려면, 인터넷에서 액세스할 수 있고 회사 네트워크 내의 디렉토리 서비스에 액세스할 수 있는 서버가 있어야 합니다. 이 문서는 Admin Console과 Shibboleth 서버를 구성하여 단일 사인온으로 Adobe Creative Cloud 응용 프로그램 관련 웹 사이트에 로그인할 수 있도록 하는 프로세스를 설명합니다.

IdP에 대한 액세스는 일반적으로 서버와 내부 및 외부 네트워크 사이에 특정 유형의 통신만 허용하는 특정 규칙으로 구성한 별도의 네트워크(일반적으로 DMZ 또는 완충 지역이라고 함)를 사용하여 수행됩니다. 이 서버의 운영 체제 구성과 그러한 네트워크의 토폴로지는 이 문서의 범위를 벗어납니다.

사전 요구 사항

Shibboleth IDP를 사용하여 단일 사인온 도메인을 구성하기 전에 다음 요구 사항을 충족해야 합니다.

  • Shibboleth의 최신 버전을 설치하고 구성했습니다.
  • Creative Cloud for Enterprise 계정과 연결될 모든 Active Directory 계정에는 Active Directory 내에 나열된 전자 메일 주소가 있습니다.

참고:

이 문서에서 설명하는 Adobe SSO와 Shibboleth IDP를 구성하는 단계는 버전 3에서 테스트되었습니다.

Shibboleth를 사용하여 단일 사인온 구성

도메인에 대해 단일 사인온을 구성하려면 다음을 수행합니다.

  1. Admin Console에 로그인하고 Federated ID 디렉토리를 만들고 다른 SAML 공급자를 ID 공급자로 선택하는 작업부터 시작합니다. SAML 프로필 추가 화면에서 ACS URL 및 엔티티 ID에 대한 값을 복사합니다.
  2. ACS URL 및 엔티티 ID를 지정하도록 Shibboleth를 구성하고 Shibboleth 메타데이터 파일을 다운로드합니다.
  3. Adobe Admin Console로 돌아와 SAML 프로필 추가 화면에서 Shibboleth 메타데이터 파일을 업로드하고 완료를 클릭합니다.

Shibboleth 구성

Adobe Admin Console에서 SAML XML 메타데이터 파일을 다운로드한 후 아래 단계에 따라 Shibboleth 구성 파일을 업데이트하십시오.

  1. 다운로드한 파일을 다음 위치로 복사하고 파일의 이름을 adobe-sp-metadata.xml로 변경합니다.

    %{idp.home}/metadata/

  2. 파일을 업데이트하여 올바른 정보가 Adobe에 다시 전달되도록 합니다.

    파일에서 다음 행 바꾸기:

    <md:NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:persistent</md:NameIDFormat>

    <md:NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</md:NameIDFormat>

    다음으로 바꾸기:

    <md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress</md:NameIDFormat>

    또한 다음 행 바꾸기:

    <md:SPSSODescriptor AuthnRequestsSigned="true" WantAssertionsSigned="true" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">

    다음으로 바꾸기:

    <md:SPSSODescriptor AuthnRequestsSigned="false" WantAssertionsSigned="false" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">

  3. attribute-filter.xml 파일을 편집합니다.

    Adobe 서비스 공급자는 SAML 응답에서 사용자의 이름성 및 전자 메일을 요구합니다.

    아래에 표시된 대로(17~31행) AttributeFilterPolicy 노드를 삽입하여 이름, 성 및 전자 메일 특성을 포함하도록 %{idp.home}/conf/attribute-filter.xml 파일을 편집합니다.

    <?xml version="1.0" encoding="UTF-8"?>
    <!--
        This file is an EXAMPLE policy file.  While the policy presented in this
        example file is illustrative of some simple cases, it relies on the names of
        non-existent example services and the example attributes demonstrated in the
        default attribute-resolver.xml file.
         
        Deployers should refer to the documentation for a complete list of components
        and their options.
    -->
    <AttributeFilterPolicyGroup>
    	<AttributeFilterPolicy>
    		<PolicyRequirementRule xsi:type="Requester" value="https://www.okta.com/saml2/service-provider/spiml66pl3iZi7tuI0x7" />
    		<AttributeRule attributeID="NameID">
    			<PermitValueRule xsi:type="ANY" />
    		</AttributeRule>
    		<AttributeRule attributeID="FirstName">
    			<PermitValueRule xsi:type="ANY" />
    		</AttributeRule>
    		<AttributeRule attributeID="LastName">
    			<PermitValueRule xsi:type="ANY" />
    		</AttributeRule>
    		<AttributeRule attributeID="Email">
    			<PermitValueRule xsi:type="ANY" />
    		</AttributeRule>
    	</AttributeFilterPolicy>
    </AttributeFilterPolicyGroup>
  4. metadata-providers.xml 파일을 편집합니다.

    %{idp.home}/conf/metadata-providers.xml을 위의 1단계에서 만든 adobe-sp-metadata.xml 메타 데이터 파일 위치(아래 29행)로 업데이트합니다.

        <!--
        <MetadataProvider id="HTTPMetadata"
                          xsi:type="FileBackedHTTPMetadataProvider"
                          backingFile="%{idp.home}/metadata/localCopyFromXYZHTTP.xml"
                          metadataURL="http://WHATEVER"> 
            
            <MetadataFilter xsi:type="SignatureValidation" requireSignedRoot="true">
                <PublicKey>
                    MIIBI.....
                </PublicKey>
            </MetadataFilter>
            <MetadataFilter xsi:type="RequiredValidUntil" maxValidityInterval="P30D"/>
            <MetadataFilter xsi:type="EntityRoleWhiteList">
                <RetainedRole>md:SPSSODescriptor</RetainedRole>
            </MetadataFilter>
        </MetadataProvider>
        -->   
    
        <!--
        Example file metadata provider.  Use this if you want to load metadata
        from a local file.  You might use this if you have some local SPs
        which are not "federated" but you wish to offer a service to.
        
        If you do not provide a SignatureValidation filter, then you have the responsibility to
        ensure that the contents are trustworthy.
        -->
        
        
        <MetadataProvider id="LocalMetadata"  xsi:type="FilesystemMetadataProvider" metadataFile="%{idp.home}/metadata/adobe-sp-metadata.xml"/>

Shibboleth 설정 문제 해결

Adobe.com에 성공적으로 로그인할 수 없는 경우, 다음 Shibboleth 구성 파일에서 가능한 문제를 확인하십시오.

1. attribute-resolver.xml

Shibboleth를 구성하는 동안 업데이트한 특성 필터 파일은 Adobe 서비스 공급자에게 제공해야 하는 특성을 정의합니다. 그러나 이러한 특성은 조직의 LDAP/Active Directory에 정의된 대로 적절한 특성에 매핑해야합니다.

다음 위치에서 attribute-resolver.xml 파일을 편집합니다.

%{idp.home}/conf/attribute-resolver.xml

다음 각 특성에 대해 사용자의 조직에서 정의된 원본 특성 ID를 지정합니다.

  • FirstName(아래 1행)
  • LastName(아래 7행)
  • Email(아래 13행)
<resolver:AttributeDefinition xsi:type="ad:Simple" id="NameID" sourceAttributeID="mail">
      <resolver:Dependency ref="myLDAP" />
      <resolver:AttributeEncoder xsi:type="SAML2StringNameID"
       xmlns="urn:mace:shibboleth:2.0:attribute:encoder"
        nameFormat="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress" />
      </resolver:AttributeDefinition>
      <resolver:AttributeDefinition xsi:type="ad:Simple" id="Email"
        sourceAttributeID="mail">
        <resolver:Dependency ref="myLDAP" />
        <resolver:AttributeEncoder xsi:type="enc:SAML2String" name="Email" />
      </resolver:AttributeDefinition>
      <resolver:AttributeDefinition xsi:type="ad:Simple" id="FirstName"
        sourceAttributeID="givenName">
        <resolver:Dependency ref="myLDAP" />
        <resolver:AttributeEncoder xsi:type="enc:SAML2String" name="FirstName" />
     </resolver:AttributeDefinition>
     <resolver:AttributeDefinition xsi:type="ad:Simple" id="LastName"
        sourceAttributeID="sn">
     <resolver:Dependency ref="myLDAP" />
    <resolver:AttributeEncoder xsi:type="enc:SAML2String" name="LastName" /></resolver:AttributeDefinition>

2. relying-party.xml

Adobe 서비스 공급자가 요구하는 saml-nameid 형식을 지원하려면 다음 위치에서 relying-party.xml을 업데이트합니다.

%{idp.home}/conf/relying-party.xml

emailAddress를 포함하도록 p:nameIDFormatPrecedence 특성(아래 7행)을 업데이트합니다.

<bean parent="RelyingPartyByName" c:relyingPartyIds="[entityId">
	<property name="profileConfigurations">
		<list>
			<bean parent="Shibboleth.SSO" p:postAuthenticationFlows="attribute-release" />
			<ref bean="SAML1.AttributeQuery" />
			<ref bean="SAML1.ArtifactResolution" />
			<bean parent="SAML2.SSO" p:nameIDFormatPrecedence="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress" p:postAuthenticationFlows="attribute-release" p:encryptAssertions="false" />
			<ref bean="SAML2.ECP" />
			<ref bean="SAML2.Logout" />
			<ref bean="SAML2.AttributeQuery" />
			<ref bean="SAML2.ArtifactResolution" />
			<ref bean="Liberty.SSOS" />
		</list>
	</property>
</bean>

또한 검증 암호화를 끄려면 각 SAML2 유형에 대한 DefaultRelyingParty섹션에서 다음을 수행합니다.

다음 행 바꾸기:

encryptAssertions="conditional"

다음으로 바꾸기:

encryptAssertions=”never"

3. saml-nameid.xml

다음 위치에서 saml-nameid.xml을 업데이트합니다.

%{idp.home}/conf/saml-nameid.xml

p:attributeSourceIds 특성(아래 3행)을 "#{ {'Email'} }"으로 업데이트합니다.

        <bean parent="shibboleth.SAML2AttributeSourcedGenerator"
            p:format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress"
            p:attributeSourceIds="#{ {'Email'} }" />

IdP 메타데이터 파일을 Adobe Admin Console에 업로드

Shibboleth 메타데이터 파일을 업데이트하려면 다음을 수행하십시오.

  1. Adobe Admin Console로 돌아갑니다.

  2. Shibboleth 메타데이터 파일을 SAML 프로필 화면에 업로드합니다.

    Shibboleth를 구성하면 메타데이터 파일(idp-metadata.xml)을 Shibboleth 서버의 다음 위치에서 사용할 수 있습니다.

    <shibboleth>/metadata

  3. 완료를 클릭합니다.

자세한 내용은 Admin Console에서 디렉터리를 작성하는 방법을 참조하십시오.

단일 사인온 테스트

Adobe 웹 사이트 또는 Creative Cloud 데스크탑 앱에 로그인하여 사용자 자신의 ID 관리 시스템과 Adobe Admin Console에서 정의한 사용자에 대한 사용자 액세스를 확인합니다.

문제가 발생하는 경우 문제 해결 문서를 참조하십시오.

여전히 SSO(Single Sign-On) 구성에 대한 지원이 필요한 경우 Adobe Admin Console에서 지원으로 이동하여 티켓을 여십시오.