

AWS Mainframe Modernization Service （受管執行期環境體驗） 不再開放給新客戶使用。對於與 AWS Mainframe Modernization Service （受管執行期環境體驗） 類似的功能，探索 AWS Mainframe Modernization Service （自我管理體驗）。現有客戶可以繼續正常使用該服務。如需詳細資訊，請參閱[AWS 大型主機現代化可用性變更](https://docs.aws.amazon.com/m2/latest/userguide/mainframe-modernization-availability-change.html)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# AWS Mainframe Modernization 應用程式定義參考
<a name="applications-m2-definition"></a>

在 中 AWS Mainframe Modernization，您可以在應用程式定義 JSON 檔案中設定已遷移的大型主機應用程式，該檔案專屬於您選擇的執行期引擎。應用程式定義同時包含一般資訊和引擎特定資訊。本主題說明大型主機和 Rocket Software （先前稱為 Micro Focus) 應用程式定義的 AWS 轉換，並識別所有必要和選用的元素。

**Contents**
+ [一般標頭區段](#applications-m2-definition-general)
+ [定義區段概觀](#applications-m2-definition-overview)
+ [AWS 大型主機應用程式定義範例的轉換](#applications-m2-definition-ba)
+ [AWS 大型主機定義詳細資訊的轉換](#applications-m2-definition-ba-details)
  + [Listener(s) - 必要](#applications-m2-definition-ba-details-listener)
  + [AWS 大型主機應用程式的轉換 - 必要](#applications-m2-definition-ba-details-application)
  + [Blusam - 選用](#applications-m2-definition-ba-details-blusam)
  + [AWS 大型主機訊息佇列的轉換 - 選用](#applications-m2-definition-ba-message-queues)
  + [AWS 大型主機應用程式儲存 EFS 組態的轉換 - 選用](#applications-m2-definitions-ba--details-efs)
+ [Rocket Software （先前稱為 Micro Focus) 應用程式定義](#applications-m2-definition-mf)
+ [Rocket 軟體定義詳細資訊](#applications-m2-definition-mf-details)
  + [Listener(s) - 必要](#applications-m2-definition-mf-details-listeners)
  + [資料集位置 - 必要](#applications-m2-definition-mf-details-datasets)
  + [Amazon Cognito 身分驗證和授權處理常式 - 選用](#applications-m2-definition-mf-details-cognito)
  + [LDAP 和 Active Directory 處理常式 - 選用](#applications-m2-definition-mf-details-ldap-ad)
  + [批次設定 - 必要](#applications-m2-definition-mf-details-batch)
  + [CICS 設定 - 必要](#applications-m2-definition-mf-details-cics)
  + [印表機 - 選用](#applications-m2-definition-mf-details-printers)
  + [XA 資源 - 選用](#applications-m2-definition-mf-details-xa)
  + [執行時間設定 - 選用](#applications-m2-definition-mf-details-runtime-settings)

## 一般標頭區段
<a name="applications-m2-definition-general"></a>

每個應用程式定義都從範本版本和來源位置的一般資訊開始。應用程式定義的目前版本為 2.0。

使用以下結構來指定範本版本和來源位置。

```
"template-version": "2.0",
    "source-locations": [
        {
            "source-id": "s3-source",
            "source-type": "s3",
            "properties": {
                "s3-bucket": "mainframe-deployment-bucket",
                "s3-key-prefix": "v1"
            }
        }
    ]
```

**注意**  
如果您想要將 S3 ARN 輸入為 s3 儲存貯體 ，您可以使用下列語法：  

```
"template-version": "2.0",
  "source-locations": [
      {
          "source-id": "s3-source",
          "source-type": "s3",
          "properties": {
              "s3-bucket": "arn:aws:s3:::mainframe-deployment-bucket",
              "s3-key-prefix": "v1"
          }
      }
  ]
```

**範本版本**  
（必要） 指定應用程式定義檔案的版本。請不要變更此值。目前，唯一允許的值為 2.0。以字串指定 `template-version`。

**來源位置**  
指定應用程式在執行期間所需的檔案和其他資源的位置。

**source-id**  
指定位置的名稱。此名稱用於視需要參考應用程式定義 JSON 中的來源位置。

**source-type**  
指定來源的類型。目前，唯一允許的值是 s3。

**屬性**  
提供來源位置的詳細資訊。每個屬性皆以字串指定。  
+ `s3-bucket` - 必要。指定存放檔案的 Amazon S3 儲存貯體名稱。
+ `s3-key-prefix` - 必要。指定存放檔案之 Amazon S3 儲存貯體中的資料夾名稱。

## 定義區段概觀
<a name="applications-m2-definition-overview"></a>

指定應用程式需要執行的服務、設定、資料和其他典型資源的資源定義。當您更新應用程式定義時， 會比較應用程式定義 JSON 檔案先前和目前版本的 `source-locations` 和 `definition`清單，以 AWS Mainframe Modernization 偵測變更。

定義區段是引擎特定的，可能會有所變更。下列各節顯示兩個引擎的範例引擎特定應用程式定義。

## AWS 大型主機應用程式定義範例的轉換
<a name="applications-m2-definition-ba"></a>

```
{
 "template-version": "2.0",
 "source-locations": [
        {
            "source-id": "s3-source",
            "source-type": "s3",
            "properties": {
                "s3-bucket": "mainframe-deployment-bucket-aaa",
                "s3-key-prefix": "v1"
            }
        }
    ],
    "definition" : {
        "listeners": [{
            "port": 8194,
            "type": "http"
        }],
        "ba-application": {
            "app-location": "${s3-source}/murachs-v6/"
        },
        "blusam": {
            "db": {
                "nb-threads": 8,
                "batch-size": 10000,
                "name": "blusam",
                "secret-manager-arn": "arn:aws:secretsmanager:us-west-2:111122223333:secret:blusam-FfmXLG"
            },
            "redis": {
                "hostname": "blusam.c3geul.ng.0001.usw2.cache.amazonaws.com",
                "port": 6379,
                "useSsl": true,
                "secret-manager-arn": "arn:aws:secretsmanager:us-west-2:111122223333:secret:bluesamredis-nioefm"
            }
        }
    }
}
```

## AWS 大型主機定義詳細資訊的轉換
<a name="applications-m2-definition-ba-details"></a>

### Listener(s) - 必要
<a name="applications-m2-definition-ba-details-listener"></a>

指定您將用來透過建立 AWS Mainframe Modernization的 Elastic Load Balancing 存取應用程式的連接埠。使用下列結構：

```
"listeners": [{
            "port": 8194,
            "type": "http"
}],
```

**port**  
（必要） 您可以使用任何可用的連接埠，除了 0 到 1023 的已知連接埠。建議使用 8192 到 8199 的範圍。請確定沒有其他接聽程式或應用程式在此連接埠上運作。

**type**  
（必要） 目前僅支援 `http` 。

### AWS 大型主機應用程式的轉換 - 必要
<a name="applications-m2-definition-ba-details-application"></a>

使用以下結構指定引擎挑選應用程式映像檔案的位置。

```
"ba-application": {
            "app-location": "${s3-source}/murachs-v6/",
            "files-directory": "/m2/mount/myfolder", 
            "enable-jics": <true|false>,
            "enable-batch-restart": <true|false>,
            "shared-app-location": "${s3-source}/shared/"
},
```

**應用程式位置**  
Amazon S3 中存放應用程式映像檔案的特定位置。

**file-directory**  
（選用） 批次的輸入/輸出檔案位置。必須是環境層級 Amazon EFS 或 Amazon FSx 掛載點設定的子資料夾。子資料夾必須由適當的使用者擁有，以供在 內執行**之大型主機應用程式的 AWS 轉換**使用 AWS Mainframe Modernization。若要達成此目的，將磁碟機連接至 Linux Amazon EC2 執行個體時，`3001`必須建立 ID 為 的群組`101`和 ID 為 的使用者，且所需的資料夾必須由此使用者擁有。*例如，透過這種方式，**AWS Transform for mainframe Managed ** AWS Mainframe Modernization 可以使用 `testclient` 資料夾。*  

```
groupadd -g 101 mygroup
useradd -M -g mygroup -p mypassword -u 3001 myuser
mkdir testclient
chown myuser:mygroup testclient
```

**enable-jics**  
（選用） 指定是否啟用 JICS。預設為 true。將此設定為 false 可防止產生 JICS 資料庫。

**enable-batch-restart**  
（選用） 指定是否要為批次任務啟用重新啟動功能。預設為 false。如需批次重新啟動組態的詳細資訊，請參閱使用適用於大型主機引擎的 AWS 轉換之受管應用程式的組態屬性`jcl.checkpoint`中字首大型主機引擎屬性的轉換。 [AWS](https://docs.aws.amazon.com/m2/latest/userguide/applications-m2-ba-config-props.html#gapwalk-app-props)

** shared-app-location **  
（選用） 在 Amazon S3 中存放共用應用程式元素的進一步位置。它可以包含與應用程式位置相同的應用程式結構類型。

### Blusam - 選用
<a name="applications-m2-definition-ba-details-blusam"></a>

使用以下結構指定Blusam資料庫和 Redis 快取。

```
"blusam": {
            "db": {
                "nb-threads": 8,
                "batch-size": 10000,
                "name": "blusam",
                "secret-manager-arn": "arn:aws:secretsmanager:us-west-2:111122223333:secret:blusam-FfmXLG"
            },
            "redis": {
                "hostname": "blusam.c3geul.ng.0001.usw2.cache.amazonaws.com",
                "port": 6379,
                "useSsl": true,
                "secret-manager-arn": "arn:aws:secretsmanager:us-west-2:111122223333:secret:bluesamredis-nioefm"
            }
}
```

**db**  
指定與應用程式搭配使用之資料庫的屬性。資料庫必須是 Aurora PostgreSQL 資料庫。您可以指定下列屬性：  
+ `nb-threads` - （選用） 指定有多少專用執行緒用於Blusam引擎所依賴的寫入落後機制。預設值為 8。
+ `batch-size` - （選用） 指定寫入落後機制用來啟動批次儲存操作的閾值。閾值代表將啟動批次儲存操作的修改後記錄數目，以確保修改後的記錄持續存在。觸發器本身是以批次大小和經過一秒鐘的組合為基礎，以先達到者為準。預設值為 10000。
+ `name` - （選用） 指定資料庫的名稱。
+ `secret-manager-arn` - 指定包含資料庫憑證之秘密的 Amazon Resource Name (ARN)。如需詳細資訊，請參閱[步驟 4：建立和設定 AWS Secrets Manager 資料庫秘密](tutorial-runtime-mf.md#tutorial-runtime-mf-secret)。

**Redis**  
指定應用程式用來將臨時資料存放在中央位置以改善效能的 Redis 快取屬性。我們建議您同時加密和密碼保護 Redis 快取。  
+ `hostname` - 指定 Redis 快取的位置。
+ `port` - 指定連接埠，通常是 6379，其中 Redis 快取會傳送和接收通訊。
+ `useSsl` - 指定是否加密 Redis 快取。如果快取未加密，請將 `useSsl`設定為 false。
+ `secret-manager-arn` - 指定包含 Redis 快取密碼之秘密的 Amazon Resource Name (ARN)。如果 Redis 快取未受密碼保護，請勿指定 `secret-manager-arn`。如需詳細資訊，請參閱[步驟 4：建立和設定 AWS Secrets Manager 資料庫秘密](tutorial-runtime-mf.md#tutorial-runtime-mf-secret)。

### AWS 大型主機訊息佇列的轉換 - 選用
<a name="applications-m2-definition-ba-message-queues"></a>

指定適用於大型主機應用程式的 AWS Transform 的 JMS-MQ 連線詳細資訊。

```
"message-queues": [ 
  {
      "product-type": "JMS-MQ",
      "queue-manager": "QMgr1",
      "channel": "mqChannel1",
      "hostname": "mqserver-host1",
      "port": 1414,
      "user-id": "app-user1",
      "ssl-cipher": "*TLS12ORHIGHER",
      "secret-manager-arn": "arn:aws:secretsmanager:us-west-2:123456789012:secret:sample/mq/test-279PTa"
  },
  {
      "product-type": "JMS-MQ",
      "queue-manager": "QMgr2",
      "channel": "mqChannel2",
      "hostname": "mqserver-host2",
      "port": 1412,
      "user-id": "app-user2",
      "ssl-cipher": "*TLS12ORHIGHER",
      "secret-manager-arn": "arn:aws:secretsmanager:us-west-2:123456789012:secret:sample/mq/test-279PTa"
  }
]
```

**product-type**  
（必要） 指定產品類型。目前，這只能是適用於大型主機應用程式的 AWS 「JMS-MQ」轉換。

**queue-manager**  
（必要） 指定佇列管理員的名稱。

**通道**  
（必要） 指定伺服器連線頻道的名稱。

**hostname **  
（必要） 指定訊息佇列伺服器的主機名稱。

**port**  
（必要） 指定伺服器接聽的接聽程式連接埠號碼。

**user-id**  
（選用） 指定允許在指定頻道上執行訊息佇列操作的使用者帳戶 ID。

**ssl-cipher**  
（選用） 指定連線的 SSL 加密規格。

**secret-manager-arn**  
（選用） 指定提供指定使用者密碼之 Secrets Manager 的 Amazon Resource Name (ARN)。

### AWS 大型主機應用程式儲存 EFS 組態的轉換 - 選用
<a name="applications-m2-definitions-ba--details-efs"></a>

使用以下結構指定應用程式儲存體 EFS 存取點詳細資訊。

```
"ba-application": {
            "file-permission-mask": "UMASK002"
},
"efs-configs": [
           {
            "file-system-id": "fs-01376dfsvfvrsvsr",
            "mount-point": "/m2/mount/efs-ap2", 
            "access-point-id": fsap-0eaesefvrefrewgv8"
           }
]
```

**file-system-id**  
（必要） 存取點套用的 EFS 檔案系統 ID。模式：「fs-(【0-9a-f】\$18，40\$1)\$11，128\$1\$1」

**掛載點**  
（必要） 應用程式層級檔案系統的掛載點。這必須與環境層級儲存體掛載點不同。

**access-point-id**  
（必要） Amazon EFS 指派的存取點 ID。模式："^fsap-(【0-9a-f】\$18，40\$1)\$11，128\$1\$1"

** file-permission-mask **  
（選用） 定義應用程式程序所建立檔案的檔案建立遮罩。例如，當 值設為 時`UMASK006`，所有檔案都會有許可 660。這表示只有檔案擁有者和檔案群組具有讀取和寫入存取權，而其他使用者則沒有任何許可。  
只有在使用應用程式層級 EFS 儲存體時，才會考慮為此欄位設定的值。

**注意**  
提供 efs 組態時，必須在應用程式定義區段中指定 file-directory。它必須是在應用程式層級設定的 Amazon EFS 掛載點的子資料夾。

## Rocket Software （先前稱為 Micro Focus) 應用程式定義
<a name="applications-m2-definition-mf"></a>

下列範例定義區段適用於 Rocket Software 執行期引擎，並同時包含必要和選用的元素。

```
{
 "template-version": "2.0",
 "source-locations": [
        {
            "source-id": "s3-source",
            "source-type": "s3",
            "properties": {
                "s3-bucket": "mainframe-deployment-bucket-aaa",
                "s3-key-prefix": "v1"
            }
        }
    ],
    "definition" : {
        "listeners": [{
            "port": 5101,
            "type": "tn3270"
        }],
        "dataset-location": {
            "db-locations": [{
                "name": "Database1",
                "secret-manager-arn": "arn:aws:secrets:1234:us-east-1:secret:123456"
            }]
        },
        "cognito-auth-handler": {
            "user-pool-id": "cognito-idp.us-west-2.amazonaws.com/us-west-2_rvYFnQIxL",
            "client-id": "58k05jb8grukjjsudm5hhn1v87",
            "identity-pool-id": "us-west-2:64464b12-0bfb-4dea-ab35-5c22c6c245f6"
        },
        "ldap-ad-auth-handler": {
            "ldap-ad-connection-secrets": [LIST OF AD-SECRETS]
        },
        "batch-settings": {
            "initiators": [{
                "classes": ["A", "B"],
                "description": "initiator...."
            }],
            "jcl-file-location": "${s3-source}/batch/jcl",
            "program-path": "/m2/mount/libs/loadlib:$EFS_MOUNT/emergency/loadlib",
            "system-procedure-libraries":"SYS1.PROCLIB;SYS2.PROCLIB",
            "aliases": [
               {"alias": "FDSSORT", "program": "SORT"},
               {"alias": "MFADRDSU", "program": "ADRDSSU"}
            ]
        },
        "cics-settings": {
            "binary-file-location": "${s3-source}/cics/binaries",
            "csd-file-location": "${s3-source}/cics/def",
            "system-initialization-table": "BNKCICV"
        },
        "jes-printers": [
           {
             "name": "printerName",
              "classes": [
                 "A",
                 "B"
             ],
             "description": "printer desc....",
             "exit-module": {
                 "name": "lrsprte6"
                }
             } 
         ],
        "xa-resources" : [{
            "name": "XASQL",
            "secret-manager-arn": "arn:aws:secrets:1234:us-east-1:secret:123456",
            "xa-connection-type": "postgres",
            "module": "${s3-source}/xa/ESPGSQLXA64.so"
        }],
        "runtime-settings": {
          "base-configuration-location": "${s3-source}/exported.json",
          "environment-variables": {
            "ES_JES_RESTART": "N",
            "EFS_MOUNT": "/m2/mount/efs",
            "LRSQ_ADDRESS": "<lrsq-address>"
          } 
        }
    }
}
```

## Rocket 軟體定義詳細資訊
<a name="applications-m2-definition-mf-details"></a>

Rocket Software 應用程式定義檔案定義區段中的內容會有所不同，取決於遷移大型主機應用程式在執行時間所需的資源。

### Listener(s) - 必要
<a name="applications-m2-definition-mf-details-listeners"></a>

使用以下結構指定接聽程式：

```
"listeners": [{
    "port": 5101,
    "type": "tn3270"
}],
```

**port**  
對於 tn3270，預設值為 5101。對於其他類型的服務接聽程式，連接埠會有所不同。您可以使用任何可用的連接埠，除了 0 到 1023 的已知連接埠。每個接聽程式都應有一個獨特的連接埠。接聽程式不應共用連接埠。如需詳細資訊，請參閱 *Micro Focus Enterprise Server* 文件中的[接聽程式控制](https://www.microfocus.com/documentation/enterprise-developer/ed70/ES-UNIX/GUID-63F6D8B0-024F-48D1-956A-1E079E4BD891.html)。

**type**  
指定服務接聽程式的類型。如需詳細資訊，請參閱 *Micro Focus Enterprise Server* 文件中的[接聽程式](https://www.microfocus.com/documentation/enterprise-developer/ed70/ES-UNIX/HTPHMDSAL100.html)。

### 資料集位置 - 必要
<a name="applications-m2-definition-mf-details-datasets"></a>

使用以下結構指定資料集位置。

```
"dataset-location": {
            "db-locations": [{
                "name": "Database1",
                "secret-manager-arn": "arn:aws:secrets:1234:us-east-1:secret:123456"
            }],
 }
```

**db-locations**  
指定遷移應用程式建立的資料集位置。目前， 僅 AWS Mainframe Modernization 支援來自單一 VSAM 資料庫的資料集。  
+ `name` - 指定資料庫執行個體的名稱，其中包含遷移應用程式建立的資料集。
+ `secret-manager-arn` - 指定包含資料庫憑證之秘密的 Amazon Resource Name (ARN)。

### Amazon Cognito 身分驗證和授權處理常式 - 選用
<a name="applications-m2-definition-mf-details-cognito"></a>

AWS Mainframe Modernization 使用 Amazon Cognito 對遷移的應用程式進行身分驗證和授權。使用以下結構指定 Amazon Cognito 身分驗證處理常式。

```
"cognito-auth-handler": {
            "user-pool-id": "cognito-idp.Region.amazonaws.com/Region_rvYFnQIxL",
            "client-id": "58k05jb8grukjjsudm5hhn1v87",
            "identity-pool-id": "Region:64464b12-0bfb-4dea-ab35-5c22c6c245f6"
}
```

**user-pool-id**  
指定 AWS Mainframe Modernization 用於驗證已遷移應用程式使用者的 Amazon Cognito 使用者集區。使用者集 AWS 區域 區的 應與 AWS Mainframe Modernization 應用程式的 AWS 區域 相符。

**client-id**  
指定已驗證使用者可存取的遷移應用程式。

**identity-pool-id**  
指定 Amazon Cognito 身分集區，其中已驗證的使用者會交換使用者集區字符，以取得允許使用者存取的登入資料 AWS Mainframe Modernization。身分集 AWS 區域 區的 應與 AWS Mainframe Modernization 應用程式的 AWS 區域 相符。

### LDAP 和 Active Directory 處理常式 - 選用
<a name="applications-m2-definition-mf-details-ldap-ad"></a>

您可以將應用程式與 Active Directory (AD) 或任何類型的 LDAP 伺服器整合，讓應用程式的使用者可以使用其 LDAP/AD 登入資料進行授權和身分驗證。

**將您的應用程式與 AD 整合**

1. 請遵循 Micro Focus [Enterprise Server 文件中設定 Active Directory for Enterprise Server Security](https://www.microfocus.com/documentation/server-cobol/51/chessa64.htm) 中所述的步驟。

1. 針對您要與應用程式搭配使用的每個 AD/LDAP 伺服器，使用 AD/LDAP 詳細資訊建立 AWS Secrets Manager 秘密。如需如何建立秘密的資訊，請參閱 AWS Secrets Manager 《 使用者指南》中的[建立 AWS Secrets Manager 秘密](https://docs.aws.amazon.com/secretsmanager/latest/userguide/)。針對秘密類型，選擇**其他類型的秘密**，並包含下列鍵/值對。

   ```
   {
       "connectionPath"       : "<HOST-ADDRESS>:<PORT>",
       "authorizedId"         : "<USER-FULL-DN>",
       "password"             : "<PASSWORD>",
       "baseDn"               : "<BASE-FULL-DN>",
       "userClassDn"          : "<USER-TYPE>",
       "userContainerDn"      : "<USER-CONTAINER-DN>",
       "groupContainerDn"     : "<GROUP-CONTAINER-DN>",
       "resourceContainerDn"  : "<RESOURCE-CONTAINER-DN>"
   }
   ```
**安全建議**  
對於 `connectionPath`， AWS Mainframe Modernization 支援 LDAP 和 LDAP over SSL (LDAPS) 通訊協定。我們建議您使用 LDAPS，因為它更安全，並防止登入資料出現在網路傳輸中。
對於 `authorizedId`和 `password`，我們建議您指定許可不超過應用程式執行所需的最嚴格唯讀和驗證許可之使用者的登入資料。
我們建議定期輪換 AD/LDAP 登入資料。
請勿以使用者名稱 `awsuser`或 建立 AD 使用者`mfuser`。這兩個使用者名稱會保留供 AWS 使用。

   下列是 範例。

   ```
   {
       "connectionPath" : "ldaps://msad4.m2.example.people.aws.dev:636",
       "authorizedId" : "CN=LDAPUser,OU=Users,OU=msad4,DC=msad4,DC=m2,DC=example,DC=people,DC=aws,DC=dev",
       "password" : "ADPassword",
       "userContainerDn" : "CN=Enterprise Server Users,CN=Micro Focus,CN=Program Data,OU=msad4,DC=msad4,DC=m2,DC=example,DC=people,DC=aws,DC=dev",
       "groupContainerDn" : "CN=Enterprise Server Groups,CN=Micro Focus,CN=Program Data,OU=msad4,DC=msad4,DC=m2,DC=example,DC=people,DC=aws,DC=dev",
       "resourceContainerDn" : "CN=Enterprise Server Resources,CN=Micro Focus,CN=Program Data,OU=msad4,DC=msad4,DC=m2,DC=example,DC=people,DC=aws,DC=dev"
   }
   ```

   使用客戶管理的 KMS 金鑰建立秘密。您必須授予 AWS Mainframe Modernization 秘密的 `GetSecretValue`和 `DescribeSecret` 許可，以及 KMS 金鑰的 `Decrypt`和 `DescribeKey`許可。如需詳細資訊，請參閱 AWS Secrets Manager 《 使用者指南》中的 [KMS 金鑰的許可](https://docs.aws.amazon.com/secretsmanager/latest/userguide/security-encryption.html#security-encryption-authz)。

1. 將以下內容新增至您的應用程式定義。

   ```
   "ldap-ad-auth-handler": {
       "ldap-ad-connection-secrets": [LIST OF AD/LDAP SECRETS]
   }
   ```

   下列是 範例。

   ```
   "ldap-ad-auth-handler": {
       "ldap-ad-connection-secrets": ["arn:aws:secrets:1234:us-east-1:secret:123456"]
   }
   ```

如果應用程式已與 LDAP 整合並已啟動，您必須提供登入資料，才能執行支援授權清單中提及的至少一個應用程式相關操作。

LDAP/AD 身分驗證處理常式適用於 Micro Focus (Rocket) 8.0.11 和更新版本。

**注意**  
目前，LDAP 管理員必須在其 LDAP 目錄中的「OPERCMDS」企業伺服器資源中提供`casstart`公用程式的「更改」許可。這需要對所有所需的預設使用者 （例如，CICSUSER - 如果應用程式與 CICS 相關） 完成，才能成功啟動應用程式。

**提供 LDAP 使用者登入資料以進行身分驗證和授權**

1.  AWS Secrets Manager 使用下列索引鍵和值建立 ：

   ```
   {
     "username" : "<USERNAME>",
     "password" : "<PASSWORD>"
   }
   ```
**重要**  
您應該有權在正在使用的 Secrets Manager `GetSecretValue` 上執行 `DescribeSecrets`和 。此外，建立 KMS 金鑰和 必要許可的關聯 AWS Secrets Manager，如[選擇 AWS KMS key](https://docs.aws.amazon.com/secretsmanager/latest/userguide/security-encryption.html#security-encryption-choose-key)所述。

1. 選擇 Secrets Manager 參數。

------
#### [ AWS console ]

   從 AWS 主控台執行操作時，您可以選擇需要傳遞的 Secrets Manager。

------
#### [ AWS CLI (or SDK) ]

   從 AWS CLI （或 SDK) 執行操作時，API 參數`auth-secrets-manager-arn`應與 Secrets Manager ARN 一起傳遞。

------

以下是目前支援授權的應用程式操作清單：
+ `StartBatchJob`
+ `CancelBatchJobExecution`
+ `ListBatchJobRestartPoints`

### 批次設定 - 必要
<a name="applications-m2-definition-mf-details-batch"></a>

使用以下結構指定作為應用程式一部分執行的批次任務所需的詳細資訊。

```
"batch-settings": {
            "initiators": [{
                "classes": ["A", "B"],
                "description": "initiator...."
            }],
            "jcl-file-location": "${s3-source}/batch/jcl",
            "program-path": "/m2/mount/libs/loadlib:$EFS_MOUNT/emergency/loadlib",
            "system-procedure-libraries":"SYS1.PROCLIB;SYS2.PROCLIB",
            "aliases": [
               {"alias": "FDSSORT", "program": "SORT"},
               {"alias": "MFADRDSU", "program": "ADRDSSU"}
    ]
}
```

**啟動器**  
指定批次啟動器，該啟動器會在遷移的應用程式成功啟動時啟動，並繼續執行，直到應用程式停止為止。您可以為每個啟動器定義一或多個類別。您也可以定義多個啟動器。例如：  

```
"batch-settings": {
            "initiators": [
                {
                  "classes": ["A", "B"],
                  "description": "initiator...."
                },
                {
                  "classes": ["C", "D"],
                  "description": "initiator...."
                }
            
        ],
 }
```
如需詳細資訊，請參閱 *Micro Focus Enterprise Server* 文件中的[如何定義批次啟動器或印表機 SEP](https://www.microfocus.com/documentation/enterprise-developer/ed70/ES-UNIX/HHMTTHJCLE08.html)。  
+ `classes` - 指定啟動器可執行的任務類別。您最多可以使用 36 個字元。您可以使用下列字元：A-Z 或 0-9。
+ `description` - 描述啟動器的用途。

**jcl-file-location**  
指定遷移應用程式執行之批次任務所需的 JCL （任務控制語言） 檔案位置。

**program-path**  
指定當 JCL 中的程式不在預設位置時，執行批次任務所需的路徑。不同的路徑名稱會以冒號 (：) 分隔。  
程式路徑只能是 EFS 路徑。

**system-procedure-libraries**  
指定將搜尋 JCL 程序的預設分割資料集。不過，此程序在 JCL 中或透過 JCLLIB 陳述式找不到。這些資料集必須編製目錄，而且必須使用目錄名稱。並以分號 (；) 分隔項目。

**別名**  
定義 JCL 中使用的公用程式和程式名稱映射到公用程式的實作名稱。以及第三方批次公用程式 AWS （例如 M2SFTP, M2WAIT、Syncsort 等） 可以選擇性地具有別名，以消除變更 JCL 的需求。例如：  
+ 適用於 SORT 的 FDSSORT 別名 FDSSORT 和適用於 ICETOOL 的 FDSICET 別名
+ ADRDSSU 的 ADRDSSU 別名 MFADRDSU
+ 同步 SORT 的別名 DMXMFSRT

### CICS 設定 - 必要
<a name="applications-m2-definition-mf-details-cics"></a>

使用以下結構指定做為應用程式一部分執行的 CICS 交易所需的詳細資訊。

```
"cics-settings": {
            "binary-file-location": "${s3-source}/cics/binaries",
            "csd-file-location": "${s3-source}/cics/def",
            "system-initialization-table": "BNKCICV"
}
```

**binary-file-location**  
指定 CICS 交易程式檔案的位置。

**csd-file-location**  
指定此應用程式的 CICS 資源定義 (CSD) 檔案位置。如需詳細資訊，請參閱 *Micro Focus Enterprise Server* 文件中的 [CICS 資源定義](https://www.microfocus.com/documentation/enterprise-developer/ed80/ES-UNIX/HRMTRHCSDS01.html)。

**system-initialization-table**  
指定遷移應用程式使用的系統初始化資料表 (SIT)。SIT 資料表的名稱最多可達 8 個字元。您可以使用 A-Z、0-9、\$1、@ 和 \$1。如需詳細資訊，請參閱 *Micro Focus Enterprise Server* 文件中的 [CICS 資源定義](https://www.microfocus.com/documentation/enterprise-developer/ed70/ES-UNIX/HRMTRHCSDS01.html)。

### 印表機 - 選用
<a name="applications-m2-definition-mf-details-printers"></a>

使用以下結構指定 jes 印表機。

```
"jes-printers": [
    {
        "name": "printerName",
        "classes": [
            "A", 
            "B"
        ],
        "description": "printer desc....",
        "exit-module": {
            "name": "lrsprte6",
            "module" : "program"
        }
    }
],
```

**注意**  
指定應用程式最多可設定 25 個印表機。

**name**  
（必要） 指定要與此印表機資源建立關聯的名稱。每個印表機的名稱必須是唯一的，並且可以使用 128 個英數字元的限制。

**類別**  
（必要） 指定適用於此印表機資源的輸出類別。最多可使用 36 個英數字元。

**description**  
（選用） 印表機的其他描述性文字。

**exit-module**  
（選用） 指定列印結束的自訂模組。沒有預設值，如果未指定，則不會使用結束模組。您可以使用受管列印退出模組或提供自己的列印退出模組。受管列印結束模組是使用 LRS 佇列`lrsprte6`的預留名稱定義，或使用模組參數提供您自己的名稱來指定位置和名稱。  
的結構`exit-module`有兩個元件：  
+ `name`- （必要），如果使用 `exit-module` 。結束模組項目的名稱。結束模組項目名稱的限制最多為 8 個字元。
+ `module` - （選用） 列印結束模組二進位檔的 S3 位置。

您可以在 [印表機](mf-app-config.md#mf-app-config-integations-printers)區段中查看更多定義結束模組的範例。

### XA 資源 - 選用
<a name="applications-m2-definition-mf-details-xa"></a>

使用以下結構指定應用程式所需的 XA 資源所需的詳細資訊。

```
"xa-resources" : [{
            "name": "XASQL",
            "secret-manager-arn": "arn:aws:secrets:1234:us-east-1:secret:123456",
            "xa-connection-type": "postgres",
            "module": "${s3-source}/xa/ESPGSQLXA64.so"
}]
```

**注意**  
XA 資源定義已更新為包含選用`xa-connection-type`欄位。如果未提供，則會假設連線類型為「postgres」。

**name**  
（必要） 指定 XA 資源的名稱。

**secret-manager-arn**  
（必要） 指定秘密的 Amazon Resource Name (ARN)，其中包含用於連線至資料庫的登入資料。

**xa-connection-type**  
（選用） 指定 XA 資源連線類型。

**模組**  
（必要） 指定 RM 切換模組可執行檔的位置。如需詳細資訊，請參閱 *Micro Focus Enterprise Server* 文件中的[規劃和設計 XARs](https://www.microfocus.com/documentation/enterprise-developer/ed60/ES-WIN/GUID-91C0E7E4-C012-4DF2-8996-CF6C52437FB7.html)。

### 執行時間設定 - 選用
<a name="applications-m2-definition-mf-details-runtime-settings"></a>

指定執行時間設定所需的詳細資訊，以使用下列結構管理允許的環境變數。

```
"runtime-settings": {
          "base-configuration-location": "${s3-source}/exported.json",
          "environment-variables": {
            "ES_JES_RESTART": "N",
            "EFS_MOUNT": "/m2/mount/efs"
    } 
}
```

**base-configuration-location**  
（選用） 指定 Micro Focus 伺服器組態的大量匯入位置。此檔案應為有效的 JSON，且與上述定義的應用程式成品位置位於相同的 S3 位置。若要從現有應用程式匯出組態，請參閱 *Rocket 軟體文件中*[的從 ESCWA 匯出區域](https://www.microfocus.com/documentation/enterprise-developer/ed90/ED-Eclipse/GUID-6CDD00CC-4086-4602-8EE2-0C07E04ACC6A.html)*一節*。

**環境變數**  
指定套用至此應用程式執行時間的 Micro Focus 支援環境變數。  
+ `ES_JES_RESTART` 是 Rocket Software 環境變數，可啟用 JCL 重新啟動處理。或者，您也可以使用 `ES_ALLOC_OVERRIDE`做為 Rocket Software 環境變數。
+ `EFS_MOUNT` 是自訂環境變數，您的應用程式可用來識別環境的 EFS 掛載位置。

您可以在 [Rocket Enterprise Server for UNIX 指南中存取所有 Rocket 軟體環境變數](https://www.microfocus.com/documentation/enterprise-developer/ed80/ES-UNIX/GUID-F0C24B4E-9720-47C1-A77C-2E9B30CC4328.html)*。*