

AWS Layanan Modernisasi Mainframe (Managed Runtime Environment experience) tidak lagi terbuka untuk pelanggan baru. Untuk kemampuan yang mirip dengan Layanan Modernisasi AWS Mainframe (pengalaman Lingkungan Runtime Terkelola), jelajahi Layanan Modernisasi AWS Mainframe (Pengalaman yang Dikelola Sendiri). Pelanggan yang sudah ada dapat terus menggunakan layanan ini seperti biasa. Untuk informasi selengkapnya, lihat Perubahan [AWS ketersediaan Modernisasi Mainframe](https://docs.aws.amazon.com/m2/latest/userguide/mainframe-modernization-availability-change.html).

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# AWS Transformasi untuk rahasia Runtime mainframe
<a name="ba-runtime-config-app-secrets"></a>

Beberapa konfigurasi sumber daya yang berisi kredensil dapat diamankan lebih lanjut dengan menggunakan rahasia. AWS Idenya adalah untuk menyimpan data penting AWS secara rahasia dan memiliki referensi ke rahasia dalam konfigurasi YAMB sehingga konten rahasia diambil dengan cepat di startup Apache Tomcat.

## Rahasia untuk Aurora
<a name="ba-runtime-config-app-secrets-aur"></a>

Konfigurasi database Aurora (untuk JICS,Blusam, db pelanggan, dan sebagainya) akan menggunakan [rahasia database](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_database_secret.html) bawaan, yang akan mengisi semua bidang yang relevan secara otomatis dari database yang sesuai.

**catatan**  
`dbname`Kuncinya adalah opsional, tergantung pada konfigurasi database Anda, itu akan masuk ke rahasia atau tidak. Anda dapat menambahkannya di sana secara manual, atau dengan memasok nama ke file YAMB.

## Rahasia lainnya
<a name="ba-runtime-config-app-secrets-other"></a>

Rahasia lainnya adalah untuk sumber daya yang memiliki satu kata sandi (terutama cache redis yang dilindungi kata sandi). Dalam hal ini [jenis rahasia lainnya](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html) harus digunakan.

### Referensi YAMM ke rahasia
<a name="ba-runtime-config-app-secrets-reference"></a>

`application-main.yml`Dapat mereferensikan rahasia ARN untuk berbagai sumber daya:

### Basis data JICS
<a name="jics-database"></a>

Kredensi database JICS dengan `spring.aws.jics.db.secret`

```
spring:
   aws:
     jics:
       db:
         dbname: jics
         secret: arn:aws:secretsmanager:XXXX
```

Kunci rahasia basis data JICS yang didukung:


| Kunci rahasia | Deskripsi kunci rahasia | 
| --- | --- | 
| host | Nama tuan rumah | 
| port | Pelabuhan | 
| dbname | Nama database | 
| nama pengguna | Nama pengguna | 
| password | Kata sandi | 
| engine | Mesin basis data: Postgres, Oracle, Db2, Microsoft SQL Server | 
| Skema saat ini | Skema khusus untuk digunakan (hanya dukungan Db2) | 
| SSLKoneksi | Apakah akan menggunakan koneksi SSL (hanya mendukung Db2) | 
| sslTrustStoreLokasi | Lokasi truststore pada klien (hanya dukungan Db2) | 
| sslTrustStoreKata Sandi | Kata sandi untuk truststore pada klien (hanya dukungan Db2) | 

**catatan**  
Nama database disediakan dalam rahasia atau dalam referensi `spring.aws.jics.db.dbname` yaml.

### Blusambasis data
<a name="blusam-database"></a>

Blusamkredensi basis data dengan `spring.aws.client.bluesam.db.secret`

```
spring:
   aws:
     client:
       bluesam:
         db:
           dbname: bluesam 
           secret: arn:aws:secretsmanager:XXXX
```

Kunci rahasia Blusam basis data yang didukung:


| Kunci rahasia | Deskripsi kunci rahasia | 
| --- | --- | 
| host | Nama tuan rumah | 
| port | Pelabuhan | 
| dbname | Nama database | 
| nama pengguna | Nama pengguna | 
| password | Kata sandi | 
| engine | Mesin basis data: Postgres | 

**catatan**  
Nama database disediakan dalam rahasia atau dalam referensi `spring.aws.client.bluesam.db.dbname` yaml.

### Database klien
<a name="client-database"></a>

Klien `application-profile.yml` dapat mereferensikan ARN rahasia untuk database klien. Ini memerlukan properti tambahan untuk mencantumkan nama sumber data. `spring.aws.client.datasources.names` Untuk setiap nama sumber data `ds_name` tentukan ARN rahasia di properti berikut:. `spring.aws.client.datasources.ds_name.secret` Contoh:

```
spring:
   aws:
     client:
       datasources:
         names: primary,host 
         primary:
           secret: arn:aws:secretsmanager:XXXX
         host:
           dbname: hostdb 
           secret: arn:aws:secretsmanager:XXXX
```

*nama: primer, host*:

Contoh dengan dua sumber data klien bernama primer dan host, masing-masing dengan database dan kredensialnya.

*dbname: hostdb:*

Dalam contoh ini, nama database “host” tidak dalam rahasia dan disediakan di sini sebagai gantinya, sedangkan untuk database “primer” itu dalam rahasia.

Kunci rahasia basis data klien yang didukung:


| Kunci rahasia | Deskripsi kunci rahasia | 
| --- | --- | 
| host | Nama tuan rumah | 
| port | Pelabuhan | 
| dbname | Nama database | 
| nama pengguna | Nama pengguna | 
| password | Kata sandi | 
| engine | Mesin basis data: Postgres, Oracle, Db2, Microsoft SQL Server | 
| Skema saat ini | Skema khusus untuk digunakan (hanya dukungan Db2) | 
| SSLKoneksi | Apakah akan menggunakan koneksi SSL (hanya mendukung Db2) | 
| sslTrustStoreLokasi | Lokasi truststore pada klien (hanya dukungan Db2) | 
| sslTrustStoreKata Sandi | Kata sandi untuk truststore pada klien (hanya dukungan Db2) | 

### Database utilitas PGM
<a name="pgm-utility-database"></a>

`application-utility-pgm.yml`Dapat mereferensikan rahasia ARN untuk berbagai sumber daya.
+  `spring.aws.client.datasources.primary` 
  + `secret`

     Rahasia ARN untuk database aplikasi.

Jenis: string
+ `type`

Nama yang sepenuhnya memenuhi syarat dari implementasi kumpulan koneksi untuk digunakan.

Jenis: string

Default: `com.zaxxer.hikari.HikariDataSource`
+ `spring.aws.client.utility.pgm.datasources` 
  + `names`

Daftar nama sumber data.

Jenis: string
+ `dsname` 
  + `dbname`

Nama tuan rumah.

Jenis: string
+ `secret`

Rahasia ARN dari database host.

Jenis: string
+ `type`

Nama yang sepenuhnya memenuhi syarat dari implementasi kumpulan koneksi untuk digunakan.

Jenis: string

Default: `com.zaxxer.hikari.HikariDataSource`

Untuk rahasia multi-sumber data:

```
spring:
   aws:
     client:
       primary:
         secret: arn:aws:secretsmanager:XXXX
         type: dataSourceType
       utility:
         pgm:
           datasources:
             names: dsname1,dsname2,dsname3
               dsname1:
                 dbname: dbname1
                 secret: arn:aws:secretsmanager:XXXX
                 type: dataSourceType
               dsname2:
                 dbname: dbname2
                 secret: arn:aws:secretsmanager:XXXX
                 type: dataSourceType
               dsname3:
                 dbname: dbname3
                 secret: arn:aws:secretsmanager:XXXX
                 type: dataSourceType
```

### Tidak ada kunci rahasia yang didukung XA
<a name="no-xa"></a>
+ mesin (postgres/oracle/db2/mssql)
+ port
+ dbname
+ Skema saat ini
+ nama pengguna
+ password
+ url
+ SSLKoneksi
+ sslTrustStoreLokasi
+ sslTrustStoreKata Sandi

`postgres`Hanya untuk nilai kunci `sslMode` rahasia (`disable/allow/prefer/require/verify-ca/verify-full`) dan properti `spring.aws.rds.ssl.cert-path` YAMB memungkinkan untuk terhubung dengan SSL.

### Kunci rahasia yang didukung XA
<a name="xa"></a>

Jika database klien menggunakan XA, sub xa-properti didukung melalui nilai-nilai rahasia.
+ host
+ port
+ dbname
+ Skema saat ini
+ nama pengguna
+ password
+ url
+ SSLConnection (benar/salah)
+ sslTrustStoreLokasi
+ sslTrustStoreKata Sandi

Namun, untuk xa-properti lainnya (misalnya `maxPoolSize` atau`driverType`), kunci YAMB biasa `spring.jta.atomikos.datasource.XXXX.unique-resource-name` harus tetap disediakan.

Nilai rahasia mengesampingkan properti YAMM.

### Default Super Admin BAC dan JAC
<a name="bac-and-jac"></a>

Anda juga dapat mengonfigurasi application-main.ymluntuk mengambil nama pengguna dan kata sandi pengguna admin super default dalam rahasia dari AWS Secrets Manager dengan menentukan ARN. Contoh berikut menunjukkan bagaimana untuk mendeklarasikan rahasia ini dalam file YAMM.

```
spring:
   aws:
     client:
       defaultSuperAdmin:
         secret: arn:aws:secretsmanager:XXXX
```

Kunci rahasia database super admin default yang didukung:


| Kunci rahasia | Deskripsi kunci rahasia | 
| --- | --- | 
| nama pengguna | Nama pengguna. | 
| password | Kata sandi. | 

### OAuth2
<a name="oauth2"></a>

Anda juga dapat mengkonfigurasi `application-main.yml` untuk mengambil rahasia OAuth2 klien dari dengan menentukan penyedia dan ARN. AWS Secrets Manager Nilai default untuk properti provider adalah Amazon Cognito. Berikut ini adalah contoh konfigurasi untuk OAuth2 penyedia Keycloak:

```
spring:
   aws:
     client:
       provider: keycloak
       keycloak:
         secret: arn:aws:secretsmanager:XXXX
```

Dalam contoh ini, rahasia klien untuk OAuth2 penyedia Keycloak diambil dari ARN yang ditentukan di AWS Secrets Manager. Konfigurasi ini mendukung beberapa penyedia dengan secara dinamis menyelesaikan nama penyedia dan ARN rahasia yang sesuai.

Kunci OAuth2 rahasia yang didukung:


| Kunci rahasia | Deskripsi kunci rahasia | 
| --- | --- | 
| rahasia klien | Rahasia yang dihasilkan oleh server otorisasi selama proses pendaftaran aplikasi. | 

### Manajer rahasia untuk cache Redis
<a name="ba-runtime-redis-secrets-properties"></a>

`application-main.yml`File tersebut dapat mereferensikan ARN rahasia untuk cache Redis. Yang didukung adalah:
+ Kredensi Gapwalk Redis dengan `spring.aws.client.gapwalk.redis.secret`
+ Kredensi Bluesam Redis dengan `spring.aws.client.bluesam.redis.secret`
+ Bluesam mengunci kredensi Redis dengan `spring.aws.client.bluesam.locks.redis.secret`
+ Katalog kumpulan data Kredensi Redis dengan `spring.aws.client.dataset.catalog.redis.secret`
+ Kredensi JICS Redis dengan `spring.aws.client.jics.redis.secret`
+ Kredensi Sesi Redis dengan `spring.aws.client.jics.redis.secret`
+ Pelacak sesi Redis kredensil dengan `spring.aws.client.session.tracker.redis.secret`
+ JICS TS Mengantri kredensi Redis dengan `spring.aws.client.jics.queues.ts.redis.secret`
+ Pos pemeriksaan JCL kredensil Redis dengan `spring.aws.client.jcl.checkpoint.redis.secret`
+ File Gapwalk mengunci kredensi Redis dengan `spring.aws.client.gapwalk.files.locks.redis.secret`
+ Blu4iv mengunci kredensi Redis dengan `spring.aws.client.blu4iv.locks.redis.secret`

 Contoh berikut menunjukkan bagaimana untuk mendeklarasikan rahasia ini dalam file YAMB.

```
spring:
   aws:
     client:
       gapwalk:
         redis:
           secret: arn:aws:secretsmanager:XXXX
       bluesam:
         locks:
           redis:
             secret: arn:aws:secretsmanager:XXXX
         redis:
           secret: arn:aws:secretsmanager:XXXX
       dataset:
         catalog:
           redis:
             secret: arn:aws:secretsmanager:XXXX
       jics:
         redis:
           secret: arn:aws:secretsmanager:XXXX
       session:
         tracker:
           redis:
             secret: arn:aws:secretsmanager:XXXX
       jics:
         queues:
           ts:
             redis:
               secret: arn:aws:secretsmanager:XXXX
       jcl:
         checkpoint:
           redis:
             secret: arn:aws:secretsmanager:XXXX
       gapwalk:
         files:
           locks:
             redis:
               secret: arn:aws:secretsmanager:XXXX
       blu4iv:
         locks:
           redis:
             secret: arn:aws:secretsmanager:XXXX
```

Kunci rahasia Redis yang didukung:


| Kunci rahasia | Deskripsi kunci rahasia | 
| --- | --- | 
| hostname | Nama host server Redis. | 
| port | Port server Redis. | 
| nama pengguna | Nama pengguna. | 
| password | Kata sandi. | 

### Manajer rahasia untuk pengaturan kata sandi SSL
<a name="ba-runtime-ssl-secrets-properties"></a>

`application-main.yml`File tersebut dapat mereferensikan ARN rahasia untuk pengaturan kata sandi SSL. Berikut ini didukung.
+ Kredensi SSL Gapwalk dengan `spring.aws.client.ssl.secret`

Contoh berikut menunjukkan bagaimana untuk mendeklarasikan rahasia ini dalam file YAMB.

```
spring:
   aws:
     client:
       ssl:
         secret: arn:aws:secretsmanager:XXXX
```


| Kunci rahasia | Deskripsi kunci rahasia | 
| --- | --- | 
| trustStorePassword | Kata sandi truststore. | 
| keyStorePassword | Kata sandi keystore. | 

### Manajer rahasia untuk pengaturan kata sandi IBM MQ
<a name="ba-runtime-IBMMQ-secrets-properties"></a>

`application-main.yml`File tersebut dapat mereferensikan ARN rahasia untuk pengaturan IBM MQ. Berikut ini didukung.
+ Koneksi IBM MQ didefinisikan sebagai daftar, dan begitu juga kredensialnya:

  `mq.queues.jmsMQQueueManagers[N].secret:`

  N dimulai dari 0 untuk koneksi pertama.

Contoh berikut menunjukkan bagaimana untuk mendeklarasikan rahasia ini dalam file YAMB.

```
mq.queues.jmsMQQueueManagers[0].secret: {{Secret-0-ARN}} 
mq.queues.jmsMQQueueManagers[1].secret: {{Secret-1-ARN}}
```

Untuk informasi tentang rahasia ARNs, lihat [Apa yang ada di rahasia Secrets Manager?](https://docs.aws.amazon.com/secretsmanager/latest/userguide/whats-in-a-secret.html)

Properti yang didefinisikan dalam rahasia akan mengganti nilai yang sesuai dalam konfigurasi `jmsMQ` YAMM.

Jika `queueManager` diatur dalam rahasia, itu akan mengesampingkan `mq.queues.jmsMQQueueManagers[N].jmsMQQueueManager` nilai dalam file YAMM.


| Kunci rahasia | Deskripsi kunci rahasia | 
| --- | --- | 
| Antrean | Nama manajer antrian IBM MQ. | 
| AppName | Nama aplikasi IBM MQ. | 
| saluran | Nama saluran IBM MQ. | 
| host | Nama host IBM MQ. | 
| port | Port MQ IBM. | 
| userId | Nama pengguna IBM MQ. | 
| password | Kata sandi pengguna IBM MQ. | 
| maxPoolSize | Ukuran kolam renang maksimum IBM MQ. | 
| sslCipherKey | Suite cipher IBM MQ SSL. | 

### Basis data JHDB
<a name="JHDB-database"></a>

`application-jhdb.yml`File klien dapat mereferensikan rahasia ARNs untuk database metadata JHDB. Setiap koneksi database memerlukan nama unik dan ARN rahasia yang sesuai yang berisi kredensi koneksi. Nama database didefinisikan dalam daftar yang dipisahkan koma, dengan rahasia individu ARNs dipetakan ke setiap nama database.

```
spring:
   aws:
     jhdb:
       cnxs:
         datasources:
           names: DBD1,DBD2
           DBD1:  
             secret: arn:aws:secretsmanager:XXXX
           DBD2:
             secret: arn:aws:secretsmanager:XXXX
```

Kunci rahasia basis data klien yang didukung:


| Kunci rahasia | Deskripsi kunci rahasia | 
| --- | --- | 
| host | Nama host. | 
| port | Port. | 
| dbname | Nama basis data. | 
| nama pengguna | Nama pengguna. | 
| password | Kata sandi. | 
| engine | Mesin database: Postgres (sekarang hanya mendukung Postgres). | 
| Skema saat ini | Skema khusus untuk digunakan. | 