비용 센터로 선택 항목을 제한하는 자원 풀의 예
Blueprint와 자원 풀을 사용하여 클라우드 카탈로그 요청 양식의 선택 항목을 제한할 수 있습니다.
사용 사례: 비용 센터 선택 제한
이 예에서는 클라우드 자산의 비용이 사용자의 비용 센터 예산에 따라 청구됩니다. 기본 시스템 UserCostCenter 자원 풀를 사용하면 사용자가 자신의 비용 센터에 있는 자원만 선택할 수 있습니다.
가정
- 비용 관리[con cost_management] 플러그인이 활성 상태입니다.
- 비용 센터가 정의되어 있고 사용자가 비용 센터와 연결되어 있습니다.
- 하나 이상의 Blueprint가 정의되어 있습니다. 이 예에서는 AWS 가상 서버라는 Blueprint를 사용합니다.
- sn_cmp_cloud_admin 역할이 할당되었고 JavaScript 및 JSON 스크립팅을 알고 있습니다.
구성요소
- 자원 풀 필터 검토
- 클라우드 관리자 포털에서 다음으로 이동합니다. .
- CostCenterPool을 열고 관련 자원 풀 필터를 검토합니다.
- All은 테이블의 모든 비용 센터를 반환하는 쿼리 필터입니다.
- UserCostCenter는 항목을 주문하는 사용자와 연결된 비용 센터를 찾는 스크립트 필터입니다.
다음은 UserCostCenter 필터의 스크립트입니다.getFilteredRecords(); //Do not remove function declaration /** * @returns filtered records in the format [{"value"="lookupValue",label="displayValue"}] */ function getFilteredRecords() { var filteredRecords = []; var userId = gs.getUserID(); var userGr = new GlideRecord('sys_user'); if (userGr.get(userId)){ var costCenterId = userGr.getValue('cost_center'); if (costCenterId){ var costCenterGr = new GlideRecord('cmn_cost_center'); if (costCenterGr.get(costCenterId)){ var costCenter = {}; costCenter.value = costCenterGr.getUniqueValue(); costCenter.label = costCenterGr.getValue('name'); filteredRecords.push(costCenter); } } } //force to string return new global.JSON().encode(filteredRecords); }
- Blueprint 카탈로그 양식 매개변수
- 다음으로 이동 을 클릭한 다음 열려는 청사진의 타일을 클릭합니다.
- 초안 상태의 Blueprint를 사용하여 탭.
- 변수 세트 관련 목록에서 일반 정보 변수 세트를 클릭합니다. 기본적으로 CostCenter 변수는 이 변수 세트에 있습니다.
- 변수 세트 양식의 클라우드 변수 관련 목록에서 CostCenter 변수를 클릭합니다.
- 클라우드 변수 양식에서 유형 사양 탭을 클릭합니다.
- 자원 풀 및 필터를 참조하는 풀 및 풀 필터 필드를 확인합니다.
- CostCenterPool은 자원 풀의 이름입니다.
- UserCostCenter는 사용자가 선택할 수 있도록 비용 센터 옵션을 가져오는 필터 스크립트입니다.
- Blueprint를 게시됨으로 설정합니다.
- 비용 센터 사용자
- 비용 센터의 구성원인 사용자 및 클라우드 사용자 포털에 액세스할 수 있는 사람을 식별합니다.
자원 풀 필터 테스트
이 사용 사례를 구성하는 구성요소를 검토한 후 클라우드 카탈로그 항목을 테스트하여 사용자가 자신의 비용 센터만 선택할 수 있는지 확인합니다.
- 이 예에서는 사용자 Alene Rabeck를 가장합니다.
- 클라우드 사용자 포털에서 스택 시작을 클릭한 다음 클라우드 카탈로그 항목을 선택합니다(이 예에서는 AWS 가상 서버).
- 비용 센터 목록에서 선택 항목을 검토합니다.
이 카탈로그 항목에 CostCenterPool::UserCostCenter 데이터 소스 값을 사용할 경우 비용 센터의 유일한 옵션은 사용자가 구성원으로 속해 있는 비용 센터입니다.
자원 풀 필터 변경
자원 풀 필터를 변경하고 결과를 확인하여 이 필터가 비용 센터 필드의 동작을 제어하고 있는지 테스트합니다.
- 클라우드 관리자 포털에서 다음으로 이동합니다. 을 클릭한 다음 AWS 가상 서버를 클릭합니다.
- 프로비저닝 작업 타일을 클릭합니다.
- 변수 세트 관련 목록에서 일반 정보 변수 세트를 클릭합니다. 기본적으로 CostCenter 변수는 이 변수 세트에 있습니다.
- 변수 세트 양식의 클라우드 변수 관련 목록에서 CostCenter 변수를 클릭합니다.
- 클라우드 변수 양식에서 유형 사양 탭을 클릭합니다.
- 풀 필터 필드를 편집하여 필터를 UserCostCenter에서 All로 변경합니다.
- 업데이트를 클릭한 다음 게시를 클릭합니다.
- 이 예에서는 사용자 Alene Rabeck를 가장합니다.
- 클라우드 사용자 포털에서 스택을 시작한 다음 AWS 가상 서버를 선택합니다.
- 모든 비용 센터가 나열되는지 확인합니다.