반응형
블로그 이미지
개발자로서 현장에서 일하면서 새로 접하는 기술들이나 알게된 정보 등을 정리하기 위한 블로그입니다. 운 좋게 미국에서 큰 회사들의 프로젝트에서 컬설턴트로 일하고 있어서 새로운 기술들을 접할 기회가 많이 있습니다. 미국의 IT 프로젝트에서 사용되는 툴들에 대해 많은 분들과 정보를 공유하고 싶습니다.
솔웅

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함

카테고리

[Predix] Understanding Platform Services 1

2016. 12. 21. 05:59 | Posted by 솔웅


반응형

Understanding Platform Services



Predix 플랫폼은 Predix Catalog를 통해 사전 구축 된 Microservices를 제공합니다. 마이크로 서비스는 Cloud Foundry marketplace에서 프로비저닝됩니다. 응용 프로그램 요구 사항에 따라 사용할 마이크로 서비스를 선택할 수 있습니다. Predix 플랫폼에서 제공되는 마이크로 서비스의 전체 목록은 Predix.io의 카탈로그 페이지를 참조하십시오.

Predix 플랫폼 서비스는 인증을 위해 OAuth2를 사용합니다. 이 서비스는 UAA (User Account and Authentication) 웹 서비스를 활용하여 OAuth2 클라이언트를 관리합니다.

사용자 계정 및 인증 (UAA)은 Cloud Foundry가 사용자 및 OAuth2 클라이언트를 관리하기 위해 제공하는 웹 서비스입니다. 주요 역할은 OAuth2 공급자로서 Cloud Foundry 사용자를 대신하여 클라이언트 응용 프로그램이 작동 할 때 사용할 토큰을 발급하는 것입니다. 로그인 서버와 공동으로 Cloud Foundry 자격 증명으로 사용자를 인증하고 해당 자격 증명 (또는 기타)을 사용하여 SSO 서비스로 작동 할 수 있습니다. 이 서비스는 사용자 계정을 관리하고 OAuth2 클라이언트를 등록하기위한 endpoint를 제공합니다.

플랫폼 서비스를 사용하려면 먼저 신뢰할 수있는 발급자로 UAA 서비스의 인스턴스를 설정해야합니다. 그런 다음 서비스에 대한 모든 액세스는 지정된 신뢰할 수있는 발급자를 사용하여 인증됩니다.

다음 다이어그램은 인증을 위해 플랫폼 서비스가 UAA와 통합되는 방법을 보여줍니다.







Setting Up UAA and Platform Services




다음 작업 로드맵은 Predix 플랫폼 서비스를 시작하는 데 필요한 기본 단계를 보여줍니다.


Task Roadmap


 Task

Description

 1

 trusted issuer를 설정하십시오. 

 사용자 계정 및 인증 (UAA) 서비스의 인스턴스를 만듭니다. UAA는 각 플랫폼 서비스가 인증에 사용하는 권한 부여 서버입니다.
자세한 내용은 Creating a UAA Service Instance를 참조하십시오


팁 : 여러분의 작업공간에 만들 수있는 UAA 인스턴스의 최대 수는 10 개입니다. 가장 좋은 방법은 각 서비스와 동일한 UAA 인스턴스를 사용하는겁니다.

 2

 서비스의 인스턴스를 만듭니다

 Predix.io 카탈로그에서 필요한 서비스를 선택하고 서비스의 인스턴스를 만듭니다.
자세한 내용은 Creating a Platform Service Instance를 참조하십시오.

 3

 UAA를 사용하여 인증 된 서비스에 대한 액세스를 설정하기 위해 OAuth2 클라이언트를 만듭니다

 UAA 인스턴스를 만들면 추가 구성을 위해 UAA에 액세스 할 수 있도록 관리 클라이언트가 자동으로 만들어집니다. 특정 범위의 서비스 인스턴스에 대해 새 클라이언트를 만들 수 있습니다. Oauth2 클라이언트가 이미있는 경우 클라이언트를 업데이트하여 서비스 인스턴스를 추가 할 수 있습니다.
자세한 내용은  Creating an OAuth2 Client를 참조하십시오.

 4

 Oath2 클라이언트를 업데이트하여 특정 서비스 범위 또는 권한을 추가하십시오.

 응용 프로그램이 플랫폼 서비스에 액세스 할 수있게하려면 JSON Web Token (JWT)에 플랫폼 서비스에 필요한 범위가 있어야합니다.
자세한 내용은  Updating the OAuth2 Client를 참조하십시오.

 5

 응용 프로그램을 서비스 인스턴스에 바인딩하십시오

 응용 프로그램과 플랫폼 서비스 간의 통신을 설정하려면 응용 프로그램을 서비스에 바인딩해야합니다.
자세한 내용은  Connecting Your Application to a Platform Service Instance.을 참조하십시오.

 6

 이제 서비스를 사용합니다

 Predix.io에 로그인하면 서비스 인스턴스가 콘솔 페이지에 나열됩니다.
특정 서비스 인스턴스 사용에 대한 자세한 내용은 Predix.io의 각 서비스 정보 페이지에서 설명서보기 버튼을 사용하십시오.

 









Setting Up Platform Services Using Cloud Foundry Commands



이는 Predix.io에서 제공하는 그래픽 사용자 인터페이스 대신 Cloud Foundry 명령 줄을 사용하여 플랫폼 서비스를 시작하는 선택적 절차입니다.

다음 선택적 절차는 Cloud Foundry 명령 줄 도구를 사용하여 Predix 플랫폼 서비스를 시작하는 데 필요한 기본 단계를 보여줍니다. 그래픽 사용자 인터페이스 사용에 대한 자세한 내용은 Setting Up UAA and Platform Services을 참조하십시오.

1. 신뢰할 수있는 발급자가 될 사용자 계정 및 인증 서비스의 인스턴스를 만듭니다.  Using the Command Line to Create a UAA Service Instance를 참조하십시오.


2. 애플리케이션을 아직 배포하지 않은 경우 애플리케이션을 Cloud Foundry로 푸시합니다.
Creating a Simple Predix Hello World Web App를 참조하십시오.


3. 응용 프로그램을 UAA 인스턴스에 바인딩하십시오. 응용 프로그램을 UAA 인스턴스에 바인딩하면 UAA 서비스 인스턴스의 연결 세부 정보가 VCAP_SERVICES 환경 변수에 채워집니다.


4. VCAP_SERVICES 환경 변수 세부 정보에서 UAA 인스턴스 issuerID를 검색하십시오.
issuerID는 인증에 UAA 인스턴스를 사용하는 다른 서비스의 인스턴스를 만들 때 필요합니다.


5. 서비스 인스턴스를 사용하고 생성하는 데 필요한 Predix 플랫폼 서비스를 선택하십시오.  Creating a Platform Service Instance Using Cloud Foundry Commands를 참조하십시오.
플랫폼 서비스의 인스턴스를 만들 때는 신뢰할 수있는 발급자 (UAA 인스턴스의 발급자 ID) 또는 신뢰할 수있는 발급자 집합을 지정해야합니다.


6. 응용 프로그램을 새 서비스 인스턴스에 바인딩하십시오.
서비스 인스턴스를 응용 프로그램에 바인딩하면 서비스 인스턴스의 연결 세부 정보가 VCAP_SERVICES 환경 변수에 채워집니다. VCAP_SERVICES 환경 변수 세부 정보에서 다음 정보를 검색 할 수 있습니다.


* http-header-name 및 http-header-value

HTTP 헤더 정보는 서비스 인스턴스에 대한 각 호출에 필요합니다. 인스턴스 호출은 헤더에 http-header-name 및 http-header-value를 포함해야합니다.

* oauth-scope

oauth-scope 값은 특정 서비스 인스턴스에 액세스하기 위해 OAuth2 클라이언트에 추가해야하는 권한을 나타냅니다. OAuth2 클라이언트 업데이트의 예는 UAAC를 사용하여 OAuth2 클라이언트 업데이트를 참조하십시오.

7. Oauth2 클라이언트를 만듭니다.  Using UAAC to Create an OAuth2 Client.를 참조하십시오.


8. 플랫폼 서비스를 사용하도록 Oauth2 클라이언트를 업데이트하십시오.



반응형