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는 각 플랫폼 서비스가 인증에 사용하는 권한 부여 서버입니다. 팁 : 여러분의 작업공간에 만들 수있는 UAA 인스턴스의 최대 수는 10 개입니다. 가장 좋은 방법은 각 서비스와 동일한 UAA 인스턴스를 사용하는겁니다. |
2 |
서비스의 인스턴스를 만듭니다 |
Predix.io 카탈로그에서 필요한 서비스를 선택하고 서비스의 인스턴스를 만듭니다. |
3 |
UAA를 사용하여 인증 된 서비스에 대한 액세스를 설정하기 위해 OAuth2 클라이언트를 만듭니다 |
UAA 인스턴스를 만들면 추가 구성을 위해 UAA에 액세스 할 수 있도록 관리 클라이언트가 자동으로 만들어집니다. 특정 범위의
서비스 인스턴스에 대해 새 클라이언트를 만들 수 있습니다. Oauth2 클라이언트가 이미있는 경우 클라이언트를 업데이트하여 서비스
인스턴스를 추가 할 수 있습니다. |
4 |
Oath2 클라이언트를 업데이트하여 특정 서비스 범위 또는 권한을 추가하십시오. |
응용 프로그램이 플랫폼 서비스에 액세스 할 수있게하려면 JSON Web Token (JWT)에 플랫폼 서비스에 필요한 범위가 있어야합니다. |
5 |
응용 프로그램을 서비스 인스턴스에 바인딩하십시오 |
응용 프로그램과 플랫폼 서비스 간의 통신을 설정하려면 응용 프로그램을 서비스에 바인딩해야합니다. |
6 |
이제 서비스를 사용합니다 |
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 클라이언트를 업데이트하십시오.
'IoT > Predix GE Digital' 카테고리의 다른 글
[Predix] Understanding Platform Services 3 (0) | 2017.01.01 |
---|---|
[Predix] Understanding Platform Services 2 (0) | 2016.12.27 |
[Predix] Learning Predix: Getting Started (0) | 2016.11.16 |