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

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함

카테고리

[Predix] Understanding Platform Services 2

2016. 12. 27. 09:28 | Posted by 솔웅


반응형


Understanding Platform Services 2






Creating a UAA Service Instance

당신은 당신의 공간에 최대 10 개의 UAA 서비스 인스턴스를 생성 할 수 있습니다. 추가 인스턴스가 필요한 경우, 새 인스턴스를 작성하기 전에 먼저 사용되지 않는 이전 인스턴스를 삭제하십시오.

    1. https://www.predix.io에서 Predix 계정에 로그인하십시오.
    2.  Catalog > Services 로 이동 한 다음 User Account and Authentication tile을 클릭하십시오.
    3. 필요한 plan에 가입을 클릭하십시오.
    4. 새 서비스 인스턴스 페이지의 필드를 완료하십시오.
     

Field
Description
Org Select your organization.
Space Select the space for your application.
Service instance name Enter a unique name for this UAA service instance.
Service plan Select a plan.
Admin client secret Enter a client secret (this is the admin password for this UAA instance). The client secret can be any alphanumeric string.
Note: Record the client secret in a secure place for later use.
Subdomain (Optional) Enter a subdomain you might need to use in addition to the domain created for UAA. You must not add special characters in the name of the subdomain. The value of sub-domain is case-insensitive.


    5.       Click Create Service.

Your UAA instance is created with the following specification:

클라이언트 식별자 (admin).
     주 : admin 클라이언트는 부트 스트랩 목적으로 작성됩니다. 응용 프로그램과 함께 사용할 추가 클라이언트를 만들 수 있습니다.

     서비스를 생성하는 동안 지정한 Client Secret.

인스턴스의 추가 세부 사항을 검색하려면 응용 프로그램을 인스턴스에 바인드 할 수 있습니다.







Using the Command Line to Create a UAA Service Instance



그래픽 사용자 인터페이스 대신 명령 줄을 사용하여 UAA 서비스 인스턴스를 만드는 optional 절차.

당신은 당신의 공간에 최대 10 개의 UAA 서비스 인스턴스를 생성 할 수 있습니다. 추가 인스턴스가 필요한 경우 사용하지 않는 이전 인스턴스를 삭제하고 새 인스턴스를 만들어야합니다.

     Cloud Foundry CLI를 사용하여 Cloud Foundry에 로그인하십시오.
     
cf login -a <API_Endpoint>

<API_Endpoint> 값은 Predix.io 사용자 계정에 등록 할 때 받는 Predix 환영 전자 메일에서 사용할 수 있습니다. Predix.io 등록에 따라 <API_Endpoint> 값은 다음 중 하나입니다.


    Predix US-West

    https://api.system.aws-usw02-pr.ice.predix.io
    Predix US-East

    https://api.system.asv-pr.ice.predix.io
    Predix Japan

    https://api.system.aws-jp01-pr.ice.predix.io
    Predix UK

    https://api.system.dc-uk01-pr.ice.predix.io

For example,

cf login -a https://api.system.aws-usw02-pr.ice.predix.io



2. 다음 명령을 입력하여 Cloud Foundry 마켓 플레이스의 서비스를 나열하십시오.

cf marketplace

UAA 서비스 인 predix-uaa가 사용 가능한 서비스 중 하나로 나열됩니다.



3. 다음 명령을 입력하여 UAA 인스턴스를 만듭니다.

cf create-service predix-uaa <plan> <my_uaa_instance> -c '{"adminClientSecret":"<my_secret>","subdomain":"<my_subdomain>"}'



어디에:
        <plan>은 서비스와 관련된 plan입니다. 예를 들어, predix-uaa 서비스에 대해 계층화 된 plan을 사용할 수 있습니다.
        -c 옵션은 다음의 추가 매개 변수를 지정하는 데 사용됩니다.
            adminClientSecret은 client secret을 지정합니다.


            하위 도메인은 UAA 용으로 만든 도메인 외에도 사용할 필요가있는 하위 도메인을 지정합니다. 이것은 optional 매개 변수입니다. 하위 도메인 이름에 특수 문자를 추가하면 안됩니다. 하위 도메인의 값은 대소 문자를 구분하지 않습니다.


    참고 : Cloud Foundry CLI 구문은 Windows와 Linux 운영 체제에 따라 다를 수 있습니다. 운영 체제에 적합한 구문은 Cloud Foundry 도움말을 참조하십시오. 예를 들어, create service 명령에 대한 도움말을 보려면 cf cs를 실행하십시오.

UAA 인스턴스는 다음 사양으로 생성됩니다.

    Client identifier (admin).


    주 : admin client 는 부트 스트랩 목적으로 작성됩니다. 응용 프로그램과 함께 사용할 추가 클라이언트를 만들 수 있습니다.

    서비스를 생성하는 동안 지정한 client secret.

인스턴스의 추가 세부 사항을 검색하려면 응용 프로그램을 인스턴스에 바인드 할 수 있습니다.

cf cs predix-uaa tiered test-1 -c '{"adminClientSecret":"admin","subdomain":"ge-digital"}'

This is how it appears in VCAP SERVICES:

"VCAP_SERVICES": {
"predix-uaa": [
   {
    "credentials": {
     "issuerId": "https://ge-digital.sb-uaa.grc-apps.svc.ice.ge.com/oauth/token",
     "subdomain": "ge-digital",
     "uri": "https://ge-digital.sb-uaa.grc-apps.svc.ice.ge.com",
     "zone": {
      "http-header-name": "X-Identity-Zone-Id",
      "http-header-value": "011d56b9-831e-407d-98d0-da4c1c946862"
     }
    },
    "label": "predix-uaa",
    "name": "test-1",
    "plan": "tiered",
    "provider": null,
    "syslog_drain_url": null,
    "tags": []
   }
  ],
 




 
  Creating a Platform Service Instance
 

플랫폼 서비스 인스턴스를 만들기 전에 신뢰할 수있는 발급자 (UAA)를 설정해야합니다.

신뢰할 수있는 발급자 인스턴스가 준비되면 응용 프로그램 개발을위한 플랫폼 서비스의 인스턴스를 만들 수 있습니다.

     https://www.predix.io에서 Predix 계정에 로그인하십시오.
     카탈로그> 서비스 탭으로 이동하고 서비스 타일을 클릭하십시오.
     필요한 계획에 가입을 클릭하십시오.
     새 서비스 인스턴스의 필드를 완료하십시오.
     
5. Click Create Service.

Creating a Platform Service Instance Using Cloud Foundry Commands

You can use the Cloud Foundry CLI to create a platform service instance.

    1. Use the Cloud Foundry CLI to log into Cloud Foundry.
    cf login -a <API_Endpoint>
   
<API_Endpoint> 값은 Predix.io 사용자 계정에 등록 할 때받는 Predix 환영 전자 메일에서 사용할 수 있습니다. Predix.io 등록에 따라 <API_Endpoint> 값은 다음 중 하나입니다.


    Predix US-West

    https://api.system.aws-usw02-pr.ice.predix.io
    Predix US-East

    https://api.system.asv-pr.ice.predix.io
    Predix Japan

    https://api.system.aws-jp01-pr.ice.predix.io
    Predix UK

    https://api.system.dc-uk01-pr.ice.predix.io

For example,

cf login -a https://api.system.aws-usw02-pr.ice.predix.io

2. 다음 명령을 입력하여 Cloud Foundry 마켓 플레이스의 서비스를 나열하십시오.

cf marketplace

3. 다음 명령을 입력하여 서비스 인스턴스를 만듭니다.
cf create-service <service_name> <plan> <my_instance> -c '{"trustedIssuerIds":["<uaa_instance1_issuerId>", "<uaa_instance2_issuerID>"]}'

어디에:

    <service_name>은 Cloud Foundry 마켓 플레이스의 서비스 이름입니다. 예를 들어 자산 서비스는 프레디 틱 자산입니다.

    <계획>은 서비스와 관련된 계획입니다. 예를 들어, predix-acs 서비스는 기본 계획과 연관 될 수 있습니다.

    <uaa_instance_issuerID>는 https://13fa0384-9e2a-48e2-9d06-2c95a1f4f5ea.predix-uaa.grc-apps.svc.ice.ge.com/oauth/token과 같이 신뢰할 수있는 발급자 (UAA 인스턴스)의 발급자 ID입니다. . 쉼표로 구분 된 목록을 사용하여 여러 신뢰할 수있는 발급자를 지정할 수 있습니다. UAA 인스턴스를 응용 프로그램에 바인딩 한 후 VCAP_SERVICES 환경 변수에서이 URL을 검색 할 수 있습니다.

참고 : Cloud Foundry CLI 구문은 Windows와 Linux 운영 체제에 따라 다를 수 있습니다. 운영 체제에 적합한 구문은 Cloud Foundry 도움말을 참조하십시오. 예를 들어, create service 명령에 대한 도움말을 보려면 cf cs를 실행하십시오.

Cloud Foundry는 서비스 인스턴스가 생성되었음을 확인하는 메시지를 표시합니다. 응용 프로그램에 바인딩 한 후이 인스턴스의 URI를 VCAP_SERVICES 환경 변수에서 검색 할 수 있습니다.



Creating an OAuth2 Client

응용 프로그램이 Predix Platform 서비스에서 작동하도록 특정 권한을 가진 OAuth2 클라이언트를 만들 수 있습니다. 종종 이것은 서비스 인스턴스를 만든 후 첫 번째 단계입니다.

UAA의 인스턴스를 만들면 해당 UAA 인스턴스를 구성하기 위해 UAA 대시 보드를 사용할 수 있습니다. UAA 대시 보드의 클라이언트 관리 탭을 사용하여 OAuth2 클라이언트를 생성 할 수 있습니다.

    Predix.io Console보기에서 서비스가 위치한 공간을 선택하십시오.
    서비스 인스턴스 페이지에서 구성 할 UAA 인스턴스를 선택하십시오.
    서비스 인스턴스 구성 옵션을 선택하십시오.
    UAA 대시 보드 로그인 페이지에서 관리자 클라이언트 비밀번호를 지정하고 로그인을 클릭하십시오.
    UAA 대시 보드에서 클라이언트 관리 탭을 선택합니다.
    클라이언트 관리 탭에는 클라이언트 및 서비스 인스턴스의 두 섹션이 있습니다. 서비스 인스턴스 섹션은 서비스에 대해 생성 한 서비스 인스턴스를 표시합니다.
    참고 : 여기에 표시된 서비스 인스턴스는 구성하려는 UAA를 사용하는 동안 만들어졌습니다. 다른 UAA 인스턴스를 사용하여 만든 서비스 인스턴스는이 페이지에 표시되지 않습니다.
    Create Client를 클릭하여 Create Client 양식을 엽니 다.
    클라이언트 작성 양식을 작성하십시오.
   
Client ID       작성중인 OAuth2 클라이언트의 이름을 지정하십시오.
Authorized Grant Types    다음 Grany Type 중 하나 이상을 선택하십시오 :

    authorization_code

    인증 코드 부여 유형을 사용하면 클라이언트는 리소스 소유자를 UAA로 지정하고 UAA는 인증 코드를 사용하여 리소스 소유자를 다시 클라이언트로 보냅니다.
    client_credentials

    클라이언트 자격 증명 부여 유형을 사용하면 UAA의 OAuth2 끝점에서 클라이언트 ID와 클라이언트 암호를 받아들이고 액세스 토큰을 제공합니다.
    암호

    리소스 소유자 암호 자격 증명 부여 유형을 사용하면 UAA의 OAuth2 끝점에서 사용자 이름과 암호를 받아들이고 액세스 토큰을 제공합니다.
    refresh_token

    새로 고침 토큰은 액세스 토큰을 얻는 데 사용되는 자격 증명입니다. 이 옵션을 선택하여 UAA에서 새로 고침 토큰을 얻을 수 있습니다. 그런 다음 새로 고침 토큰을 사용하여 현재 액세스 토큰이 유효하지 않거나 만료되었을 때 UAA에서 새 액세스 토큰을 얻거나 범위가 같거나 좁은 추가 액세스 토큰을 얻을 수 있습니다. 
   
Client Secret     암호를 지정하십시오. 이 암호를 기록해 두는 것이 중요합니다. 손실 된 경우이 암호를 검색 할 수 없습니다.

Confirm Client Secret     Reenter the client secret.
Redirect URI        로그인 후 클라이언트를 리디렉션 할 리디렉션 URI를 지정하십시오 (예 : http://example-app.com/welcome).

UAA를 외부 Identify 공급자의 서비스 공급자로 사용하기 시작할 때이 URI를 사용하십시오.

Scopes    범위는 OAuth 클라이언트와 관련된 권한으로 애플리케이션을 통해 리소스에 대한 사용자 액세스를 결정합니다. 사용자 권한은 권한 부여 유형 authorization_code, 암호 및 암시 적입니다.

기본적으로 관리 클라이언트에는 필요한 모든 범위가 지정됩니다. 새 클라이언트의 경우 관리자는 클라이언트 요구 사항에 따라 추가 할 범위를 선택할 수 있습니다.

사용 가능한 범위 목록은 UAA에서 승인 한 범위를 참조하십시오.

Predix Platform 서비스 인스턴스에 OAuth2 클라이언트를 사용하려면 서비스 인스턴스에 클라이언트를 추가 한 후 각 서비스에 특정한 범위를 추가하도록 OAuth2 클라이언트를 업데이트해야합니다.

Authorities       권한은 사용자 개입없이 자체 자격 증명으로 리소스에 액세스하기 위해 애플리케이션 또는 API가 자체적으로 행동 할 때 OAuth 클라이언트와 관련된 권한입니다. 권한은 client_credentials 권한 부여 유형에 대한 것입니다.

기본적으로, 관리 클라이언트에는 모든 필수 권한이 지정됩니다. 새 클라이언트의 경우, 관리자는 클라이언트 요구 사항에 따라 추가 할 권한을 선택할 수 있습니다.

권한 목록은 범위 목록과 일치합니다. 사용 가능한 UAA 범위 목록은 UAA에서 승인 한 범위를 참조하십시오.

Predix Platform 서비스 인스턴스에 OAuth2 클라이언트를 사용하려면 OAuth2 클라이언트를 업데이트하여 클라이언트를 서비스 인스턴스에 추가 한 후 각 서비스에 특정한 권한을 추가해야합니다.
노트:

관리 클라이언트에는 사용자 암호를 변경할 수있는 기본 권한이 할당되지 않습니다. 사용자 암호를 변경하려면 admin 클라이언트에 uaa.admin 권한을 추가해야합니다.

Auto Approved Scopes     리소스 소유자의 명시적인 승인없이 클라이언트에 대해 자동으로 승인 될 수있는 범위를 지정합니다.

Allowed Providers        외부 아이디 공급자의 이름을 지정합니다. 이 필드는 UAA와 함께 외부 ID 공급자를 서비스 공급자로 사용하는 경우 필요합니다.

Access Token Validity    액세스 토큰 만료 시간을 ms 단위로 지정합니다.

Refresh Token Validity     새로 고침 토큰 만료 시간 (밀리 초)을 지정합니다.

반응형