Menambahkan kebijakan keamanan info Java kustom

Halaman ini berlaku untuk Apigee dan Apigee hybrid.

Lihat Dokumentasi Apigee Edge.

Apa yang dimaksud dengan kebijakan keamanan info Java kustom?

Aktifkan Info Java Anda untuk menyesuaikan perilaku API menggunakan kode Java. Saat Anda mengimplementasikan info Java, Apigee menetapkan izin default untuk API menggunakan Kebijakan izin Java. Di Apigee Hybrid, Anda dapat mengubah setelan default dengan membuat kebijakan keamanan pemanggilan Java khusus.

Anda dapat membuat kebijakan keamanan info Java khusus menggunakan resource, yang ditentukan dalam file resource jenis securityPolicy. Resource dikonfigurasi di tingkat lingkungan. File resource dapat memiliki nama apa saja, tetapi Anda harus menambahkan akhirannya .policy ke nama file kebijakan java kustom. Contoh: strict-security.policy.

Perintah berikut menambahkan file resource bernama strict-security.policy.

curl -X POST "https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles?name=CustomJavaSecurityPolicy&type=securityPolicy"
-H "Authorization: Bearer $TOKEN" \
-H "Content-type: multipart/form-data" \
-F file=@/Users/home/strict-security.policy
File kebijakan keamanan mendukung sintaksis yang sama dengan kebijakan keamanan Java standar; lihat Penerapan Kebijakan Default dan Sintaksis File Kebijakan.

Setelah Anda membuat file kebijakan keamanan yang menentukan kebijakan Panggilan Java kustom, runtime Apigee dapat mendeteksi kebijakan dan menggunakan izin khusus yang ditetapkan oleh kebijakan. Jika tidak ada info Java kustom jika kebijakan ini digunakan, Apigee menggunakan kebijakan keamanan default untuk kode Java atau Python kustom.

File kebijakan keamanan

Contoh berikut menunjukkan konten contoh file kebijakan keamanan.

Baris di bawah ini menetapkan lokasi kode untuk pemanggilan Java khusus dan pemberian semua izin akses ke direktori tersebut.

Relaxed security policy file for testing
// javacallout code has just read permission in the installed dir and everything below it
  grant codeBase "file:${javacallout.dir}/-"  {
    permission java.security.AllPermission;
}

Baris ini menentukan lokasi kode untuk Info Jython/Python kustom dan memberikan izin akses membaca ke direktori tersebut.

// Jython/Python secure
grant codeBase "file:${jython-secure-jar}" {
    // No logging permissions for secure jar. Hence value of the AllExcept target parameter set to 0
    permission com.apigee.securitypolicy.AllExcept "0", "java.io.FilePermission";
    permission java.io.FilePermission "{T}conf_security-policy_install.dir{/T}/lib/-" , "read";
    // Add JRE read permissions to jython. Existing permissions have two formats to java home. Keep the same.
    permission java.io.FilePermission "${java.home}/-", "read,readLink";
    permission java.io.FilePermission "${JAVA_HOME}/-", "read,readLink";
}

Contoh

Contoh berikut menunjukkan cara melakukan tugas tertentu yang terkait dengan kebijakan keamanan info Java khusus.

Membuat kebijakan keamanan info Java kustom

Perintah berikut membuat kebijakan keamanan pemanggilan Java khusus, yang ditentukan dalam file resource bernama strict-security.policy.

curl -X POST "https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles?name=CustomJavaSecurityPolicy&type=securityPolicy"
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type: multipart/form-data" \
  -F file=@/Users/home/strict-security.policy

Lihat semua kebijakan keamanan

Perintah berikut memungkinkan Anda melihat semua kebijakan keamanan info Java khusus yang ada di Compute Engine API.

curl -X GET "https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles/securityPolicy" \
  -H "Authorization: Bearer $TOKEN"

Melihat konten file kebijakan keamanan

Perintah berikut mengambil konten dari setiap file kebijakan keamanan sehingga Anda dapat melihatnya.

curl -X GET "https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles/securityPolicy/CustomJavaSecurityPolicy" \
  -H "Authorization: Bearer $TOKEN"

Memperbarui kebijakan yang dicakupkan ke lingkungan

Perintah berikut memperbarui kebijakan keamanan yang dicakupkan ke lingkungan.

curl -X PUT "https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles/securityPolicy/CustomJavaSecurityPolicy"
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type: multipart/form-data" \
  -F file=@/Users/home/strict-security-revised.policy

Menghapus kebijakan keamanan yang dicakup dalam lingkungan

Perintah berikut menghapus kebijakan keamanan yang dicakupkan ke lingkungan.

curl -X DELETE https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles/securityPolicy/CustomJavaSecurityPolicy \
  -H "Authorization: Bearer $TOKEN"