SSO

NODEJS에서 SAML 연동

HT연구소

2021.11.12읽음 2858

안녕하세요.

저희가 지금 NODEJS EXPRESS 에서 NAVER WORKS를 IDP로 사용하기 위해 SAML 방식으로 연동을 하려고하는데요.

Document에 명시된 값이 명확하지 않아서 질문드립니다.

- 아래 DOCUMENT에 명시된 예시-

 <?xml version="1.0" encoding="UTF-8"?>
 <saml2p:AuthnRequest
     xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol"
     AssertionConsumerServiceURL="{NAVER WORKS에 등록한 ACS URL}"
     ID="{ID}"
     IssueInstant="{SAML Request 생성 일시}"
     ProtocolBinding="{Protocol Binding}"
     ProviderName="{Service Provider Name}"
     Version="2.0">
     <saml2:Issuer
         xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">{NAVER WORKS에 등록한 SP Issuer}</saml2:Issuer>
     <saml2p:NameIDPolicy Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"/>
 </saml2p:AuthnRequest>

- 아래 세팅 창

1. NAVER WORKS에 등록한 ACS URL이라는건 Service Provider 정보에 ACS URL을 말하는 것인가요?

 - 그렇다면 만약 Localhost에서 테스트 해보고 싶을경우 http://localhost로 할 수 있는건가요?

2. SAML 명세에 나와있는 ID의 경우, 고객사에서 발행하는 ID라고 되어있는데 저희 측에서 임의 발행해서 사용가능한건가요?

3. Protocol binding의 경우 post로 받으려면 urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST 로 설정하고 그외에는 GET 방식이라고 되어있는데

 그 외라는 건 항목을 아예 안 넣어도 그외로 작동하는건가요? 아니면 임의의 문자열이라도 넣어야 하는건가요?

4. Provider name은 고객사명이라고 적혀있는데 별도의 등록 없이 임의로 만들어서 사용가능한건가요?

5. 타사의 경우  IDP로 사용할수 있게끔 전용 passport 모듈(passport-kakao, passport-naver등)을 지원합니다. 네이버 웍스 역시 전용 모듈을 지원하는가요?

- 지원한다면 해당 링크를 주시면 감사하겠습니다.

댓글1

  • 업데이트 된 답글입니다.

    NAVER WORKS 공식계정

    1. NAVER WORKS에 등록한 ACS URL이라는건 Service Provider 정보에 ACS URL을 말하는 것인가요?
    - 그렇다면 만약 Localhost에서 테스트 해보고 싶을경우 http://localhost로 할 수 있는건가요?

    =​> Service Provider 정보에 ACS URL 이 맞습니다. NAVER WORKS에서 localhost의 IP를 특정할수 없으므로 사용할 수 없습니다.



    2. SAML 명세에 나와있는 ID의 경우, 고객사에서 발행하는 ID라고 되어있는데 저희 측에서 임의 발행해서 사용가능한건가요?

    =​> 그렇습니다



    3. Protocol binding의 경우 post로 받으려면 urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST 로 설정하고 그외에는 GET 방식이라고 되어있는데
    그 외라는 건 항목을 아예 안 넣어도 그외로 작동하는건가요? 아니면 임의의 문자열이라도 넣어야 하는건가요?

    =​> GET으로 받으려면 항목을 생략하면 됩니다.



    4. Provider name은 고객사명이라고 적혀있는데 별도의 등록 없이 임의로 만들어서 사용가능한건가요?

    => 임의의 고객사명을 입력합니다(선택)



    5. 타사의 경우  IDP로 사용할수 있게끔 전용 passport 모듈(passport-kakao, passport-naver등)을 지원합니다. 네이버 웍스 역시 전용 모듈을 지원하는가요?
    - 지원한다면 해당 링크를 주시면 감사하겠습니다.

    =>안타깝게도 nodejs용 passport 모듈은 제공하고 있지 않습니다

    감사합니다.

    2021.11.15

    0
이전 글메신저 Bot 메세지 전송 UI javascript로 커스터마이징 여부
다음 글SAML 연동 후 599에러가 발생합니다
목록

궁금한 점을 해결하지 못하셨나요?
지금 바로 NAVER WORKS 사용자들에게 물어보세요!