ศูนย์คู่มือ Ruk-Com PaaS

คู่มือการพัฒนา Deploy และดูแล Application บนแพลตฟอร์ม

RUK-COM PAAS / JAVA

คู่มือ Jetty Security สำหรับ Java

คู่มือนี้เรียบเรียงสำหรับ Ruk-Com PaaS หน้าจอและตัวเลือกอาจแตกต่างตามเวอร์ชันและสิทธิ์ของบัญชี

ตรวจสอบ Environment, Region, สิทธิ์บัญชี และสำรองค่าปัจจุบันก่อนดำเนินการกับระบบจริง

คู่มือภาษาไทย

คำสั่ง ชื่อเมนู พารามิเตอร์ และค่าตัวอย่างในกรอบ Code คงรูปแบบตามระบบเพื่อให้คัดลอกและตรวจสอบได้ถูกต้อง

เอกสารนี้จะช่วยคุณกำหนดค่าขอบเขตความปลอดภัยสำหรับคุณท่าเทียบเรือเซิร์ฟเวอร์แอปพลิเคชันเพื่อปรับปรุงการป้องกันแอปพลิเคชันของคุณขอบเขตที่กำหนดค่าอย่างถูกต้องทำให้สามารถตั้งค่าการตรวจสอบสิทธิ์และการควบคุมการเข้าถึงสำหรับเว็บแอปพลิเคชัน Jetty ของคุณได้

อาณาจักรเป็นบริการเข้าสู่ระบบที่ใช้ได้กับเว็บแอปพลิเคชันทั้งหมดบนเซิร์ฟเวอร์หากถูกกำหนดไว้ในไฟล์กำหนดค่า Jetty แต่ละอาณาจักรประกอบด้วยผู้ใช้หลากหลายกลุ่มและมีชื่อเฉพาะของตัวเองผู้ใช้ที่ระบุทุกคนมีข้อมูลการตรวจสอบสิทธิ์และชุดบทบาทที่เกี่ยวข้องคุณสามารถกำหนดค่าขอบเขตที่แตกต่างกันตั้งแต่หนึ่งรายการขึ้นไปได้ตามความต้องการของคุณ

เราจะแสดงตัวอย่างวิธีกำหนดค่าด้านล่างนี้การควบคุมการเข้าถึงสำหรับแอปพลิเคชันเซิร์ฟเวอร์ Jetty ของคุณใน Ruk-Com PaaS:

การรับรองความถูกต้อง

หากต้องการกำหนดค่าคำขอการตรวจสอบสิทธิ์ที่ด้านหน้าแอปพลิเคชันเซิร์ฟเวอร์ Jetty ของคุณให้ทำตามคำแนะนำต่อไปนี้:

  1. คลิกที่การกำหนดค่าถัดจากแอปพลิเคชันเซิร์ฟเวอร์ Jetty ของคุณในแดชบอร์ดแพลตฟอร์ม

Image 40: Jetty config2. ไปที่/opt/ท่าเทียบเรือ/ฯลฯไดเรกทอรีและสร้างrealm.propertiesไฟล์ที่นั่น

Image 41: create new file3. ไฟล์นี้ให้ข้อมูลเกี่ยวกับผู้ใช้และบทบาทของพวกเขาซึ่งจะใช้สำหรับการตรวจสอบสิทธิ์ระบุผู้ใช้และบทบาทในรูปแบบต่อไปนี้:

สำเนา

# {user}:{password},{role1},{role2},{role3}
test: password, admin

Image 42: realm.properties configในตัวอย่างข้างต้นเราได้สร้างไฟล์ทดสอบผู้ใช้กับผู้ดูแลระบบบทบาท. คุณสามารถเพิ่มผู้ใช้ได้มากเท่าที่คุณต้องการแต่อย่าลืมด้วยบันทึกไฟล์หลังการแก้ไข

  1. ต่อไปให้สร้างjetty-realm.xmlไฟล์ในอันเดียวกัน/opt/ท่าเทียบเรือ/ฯลฯไดเรกทอรีมันจะมีข้อมูลเกี่ยวกับอาณาจักร

คัดลอก xml

<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://jetty.org/configure_10_0.dtd">

<Configure id="Server" class="org.eclipse.jetty.server.Server">
  <Call id="ResourceFactory" class="org.eclipse.jetty.util.resource.ResourceFactory" name="of">
    <Arg><Ref refid="Server" /></Arg>
    <Call id="realmResource" name="newResource">
      <Arg><Property name="jetty.demo.realm" default="etc/realm.properties" /></Arg>
    </Call>
  </Call>

  <Call name="addBean">
    <Arg>
      <New class="org.eclipse.jetty.security.HashLoginService">
        <Set name="name">MyRealm</Set>
        <Set name="config"><Ref refid="realmResource"/></Set>
      </New>
    </Arg>
  </Call>
</Configure>

Image 43: jetty-realm.xml config5. บันทึกการเปลี่ยนแปลงและค้นหาwebdefault-ee10.xmlไฟล์ยังอยู่ในไดเร็กทอรีเดียวกันไฟล์นี้มีการตั้งค่าความปลอดภัยเริ่มต้นสำหรับเซิร์ฟเวอร์ Jetty ของคุณคุณต้องเพิ่มบรรทัดต่อไปนี้ที่ท้ายไฟล์ก่อนการปิดไฟล์</web-app>แท็ก:

คัดลอก xml

<security-constraint>
    <web-resource-collection>
      <web-resource-name>Secure Area</web-resource-name>
      <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
      <role-name>admin</role-name>
    </auth-constraint>
  </security-constraint>
  <login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>MyRealm</realm-name>
  </login-config>
  <security-role>
    <role-name>admin</role-name>
  </security-role>

Image 44: webdefault.xml config6. คลิกบันทึกและไปที่/opt/ท่าเทียบเรือ/โมดูล/ไดเรกทอรีที่นี่คุณต้องค้นหาserver.modและเพิ่มการกำหนดค่าขอบเขตจากรุ่นก่อนหน้าไปยัง[xml]ส่วน.

สำเนา

etc/jetty-realm.xml

Image 45: server.mod config7. อย่าลืมบันทึกไฟล์แล้วคลิกรีสตาร์ทปุ่มสำหรับเซิร์ฟเวอร์ Jetty ของคุณเพื่อใช้การเปลี่ยนแปลง

Image 46: restart Jetty server8. เพื่อให้แน่ใจว่าทุกอย่างทำงานได้ดีให้ลองเปิดแอปพลิเคชันของคุณ (ไฟล์เปิดในเบราว์เซอร์ถัดจาก Environment ท่าเทียบเรือของคุณ) คุณควรเห็นหน้าต่างคำขอการรับรองความถูกต้อง:

Image 47: Jetty authentication

ข้อจำกัดการเข้าถึงไฟร์วอลล์

อีกวิธีหนึ่งในการรักษาความปลอดภัยแอปพลิเคชัน Jetty ของคุณคือการจัดการการเข้าถึงตามที่อยู่ IP ของลูกค้าซึ่งสามารถทำได้โดยการกำหนดค่ากฎไฟร์วอลล์สำหรับเซิร์ฟเวอร์ Jetty ของคุณ

Ruk-Com PaaS ให้บริการไฟร์วอลล์ในตัวที่ช่วยให้คุณทำการปรับเปลี่ยนที่จำเป็นทั้งหมดเพื่อควบคุมการเข้าถึงแอปพลิเคชันของคุณได้อย่างยืดหยุ่น

บันทึก:คุณต้องเพิ่มกไอพีสาธารณะที่อยู่ไปยังเซิร์ฟเวอร์ Jetty ของคุณเพื่อใช้กฎไฟร์วอลล์

ตัวอย่างเช่นหากคุณต้องการปฏิเสธการเข้าถึงแอปพลิเคชัน Jetty ของคุณสำหรับที่อยู่ IP ที่ระบุให้ทำตามขั้นตอนถัดไป:

  1. คลิกที่การกำหนดค่าถัดจาก Environment ท่าเทียบเรือของคุณแล้วไปที่ไฟร์วอลล์ส่วน.

Image 49: firewall config2. สลับไปที่กฎขาเข้าแท็บแล้วคลิกเพิ่มปุ่มเพื่อสร้างกฎใหม่หากต้องการปฏิเสธการเชื่อมต่อจาก IP ใดโดยเฉพาะให้กรอกข้อมูลในช่องดังต่อไปนี้:

  • Node- เลือกเซิร์ฟเวอร์ท่าเทียบเรือ
  • ชื่อ- ป้อนชื่อกฎที่ต้องการ
  • โปรโตคอล- เลือกTCPโปรโตคอลที่จำเป็น
  • ช่วงพอร์ต- ปฏิเสธการเข้าถึงพอร์ตทั้งหมดโดยออกจากฟิลด์นี้ว่างเปล่า
  • แหล่งที่มา- เลือกที่อยู่ IP ที่กำหนดเองตัวเลือกและพิมพ์ IP ที่จำเป็นในที่ปรากฏช่วงที่อยู่ IPสนาม
  • ลำดับความสำคัญ- กำหนดลำดับความสำคัญที่เหมาะสมสำหรับกฎนี้ (เช่น900ที่จะนำไปใช้ก่อนค่าเริ่มต้น)
  • การกระทำ- เลือกปฏิเสธตัวเลือก

Image 50: deny IP ruleคลิกเพิ่มเพื่อบันทึกและใช้กฎของคุณโดยอัตโนมัติ

  1. ตอนนี้หากคุณพยายามเข้าถึงแอปพลิเคชัน Jetty จากที่อยู่ IP ที่ถูกปฏิเสธคุณจะได้รับข้อความแสดงข้อผิดพลาดที่ระบุว่าไม่สามารถเข้าถึงไซต์ได้

Image 51: access denied