กำหนดค่า SSO ของ Apigee สำหรับการเข้าถึง HTTPS

การติดตั้งและกำหนดค่า SSO ของ Apigee อธิบายวิธีการ เพื่อติดตั้งและกำหนดค่าโมดูล SSO ของ Apigee เพื่อใช้ HTTP บนพอร์ต 9099 ตามที่ระบุไว้โดยรหัส พร็อพเพอร์ตี้ต่อไปนี้ในไฟล์การกำหนดค่า Edge

SSO_TOMCAT_PROFILE=DEFAULT

หรือจะตั้งค่า SSO_TOMCAT_PROFILE เป็นอย่างใดอย่างหนึ่งต่อไปนี้ก็ได้ ค่าเพื่อเปิดใช้การเข้าถึง HTTPS ได้แก่

  • SSL_PROXY: กำหนดค่า apigee-sso, โมดูล SSO ของ Apigee ในโหมดพร็อกซี ซึ่งหมายความว่าคุณได้ติดตั้งตัวจัดสรรภาระงานที่ด้านหน้า apigee-sso และ TLS สิ้นสุดการทำงานบนตัวจัดสรรภาระงานแล้ว ให้คุณระบุพอร์ตที่ใช้ใน apigee-sso สำหรับคำขอจากตัวจัดสรรภาระงาน
  • SSL_TERMINATION: เปิดใช้การเข้าถึง TLS ของ apigee-sso ใน พอร์ตที่คุณต้องการได้ คุณต้องระบุคีย์สโตร์สำหรับโหมดนี้ที่มีใบรับรอง ลงนามโดย CA คุณไม่สามารถใช้ใบรับรองที่ลงชื่อด้วยตนเอง

คุณสามารถเลือกเปิดใช้ HTTPS ได้ตั้งแต่ติดตั้งและกำหนดค่าครั้งแรก apigee-sso หรือจะเปิดใช้ภายหลังก็ได้

การเปิดใช้การเข้าถึง HTTPS ใน apigee-sso โดยใช้โหมดใดโหมดหนึ่งจะเป็นการปิดใช้ HTTP สิทธิ์การเข้าถึง ซึ่งหมายความว่าคุณเข้าถึง apigee-sso โดยใช้ทั้ง HTTP และ HTTPS ไม่ได้ พร้อมกัน

เปิดใช้งานโหมด SSL_PROXY

ในโหมด SSL_PROXY ระบบของคุณ ใช้ตัวจัดสรรภาระงานที่ด้านหน้าของโมดูล SSO ของ Apigee และจะสิ้นสุด TLS บนตัวจัดสรรภาระงาน ใน ในรูปต่อไปนี้ ตัวจัดสรรภาระงานจะยุติ TLS บนพอร์ต 443 จากนั้นจึงส่งต่อคำขอไปยัง โมดูล SSO ของ Apigee ในพอร์ต 9099 มีดังนี้

ในการกำหนดค่านี้ คุณเชื่อถือการเชื่อมต่อจากตัวจัดสรรภาระงานไปยังโมดูล SSO ของ Apigee คุณจึงไม่จำเป็นต้องใช้ TLS สำหรับการเชื่อมต่อนั้น แต่เอนทิตีภายนอก เช่น IDP ต้องเข้าถึงโมดูล SSO ของ Apigee ที่พอร์ต 443 ไม่ใช่ในพอร์ต 9099 ที่ไม่มีการป้องกัน

เหตุผลที่ต้องกำหนดค่าโมดูล SSO ของ Apigee ในโหมด SSL_PROXY คือ SSO ของ Apigee โมดูลจะสร้าง URL เปลี่ยนเส้นทางอัตโนมัติที่ IdP ใช้ภายนอกเป็นส่วนหนึ่งของการตรวจสอบสิทธิ์ ขั้นตอนได้ ดังนั้น URL เปลี่ยนเส้นทางเหล่านี้จึงต้องมีหมายเลขพอร์ตภายนอกของการโหลด 443 ในตัวอย่างนี้ ไม่ใช่พอร์ตภายในในโมดูล SSO ของ Apigee, 9099

วิธีกำหนดค่าโมดูล SSO ของ Apigee สำหรับโหมด SSL_PROXY

  1. เพิ่มการตั้งค่าต่อไปนี้ในไฟล์การกำหนดค่า
    # Enable SSL_PROXY mode.
    SSO_TOMCAT_PROFILE=SSL_PROXY
    
    # Specify the apigee-sso port, typically between 1025 and 65535.
    # Typically ports 1024 and below require root access by apigee-sso.
    # The default is 9099.
    SSO_TOMCAT_PORT=9099
    
    # Specify the port number on the load balancer for terminating TLS.
    # This port number is necessary for apigee-sso to auto-generate redirect URLs.
    SSO_TOMCAT_PROXY_PORT=443
    SSO_PUBLIC_URL_PORT=443
    
    # Set public access scheme of apigee-sso to https.
    SSO_PUBLIC_URL_SCHEME=https
  2. กำหนดค่าโมดูล SSO ของ Apigee ดังนี้
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. อัปเดตการกำหนดค่า IDP เพื่อส่งคำขอ HTTPS ในพอร์ต 443 ของการโหลด สำหรับการเข้าถึง SSO ของ Apigee สําหรับข้อมูลเพิ่มเติม โปรดดูข้อใดข้อหนึ่งต่อไปนี้
  4. อัปเดตการกำหนดค่า Edge UI สำหรับ HTTPS โดยการตั้งค่าพร็อพเพอร์ตี้ต่อไปนี้ในไฟล์การกำหนดค่า
    วันที่
    SSO_PUBLIC_URL_PORT=443
    SSO_PUBLIC_URL_SCHEME=https

    จากนั้นอัปเดต Edge UI ดังนี้

    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-sso -f configFile

    ใช้คอมโพเนนต์ edge-ui สำหรับ UI แบบคลาสสิก

  5. หากคุณติดตั้งพอร์ทัล Apigee Developer Services (หรือเรียกง่ายๆ ว่าพอร์ทัล) ไว้ ให้อัปเดตพอร์ทัลให้ใช้ HTTPS เพื่อเข้าถึง SSO ของ Apigee สำหรับ ข้อมูลเพิ่มเติม โปรดดู กำหนดค่าพอร์ทัลเพื่อใช้ IdP ภายนอก

โปรดดูเปิดใช้ IdP ภายนอกใน Edge UI สำหรับ ข้อมูลเพิ่มเติม

เปิดใช้งานโหมด SSL_TERMINATION

สําหรับโหมด SSL_TERMINATION คุณต้องมีคุณสมบัติต่อไปนี้

  • สร้างใบรับรอง TLS และคีย์แล้วเก็บไว้ในไฟล์คีย์สโตร์ คุณไม่สามารถใช้ ใบรับรองที่ลงนามด้วยตนเอง คุณต้องสร้างใบรับรองจาก CA
  • อัปเดตการตั้งค่าการกำหนดค่าสำหรับ apigee-sso.

หากต้องการสร้างไฟล์คีย์สโตร์จากใบรับรองและคีย์ ให้ทำดังนี้

  1. สร้างไดเรกทอรีสำหรับไฟล์ JKS ได้ดังนี้
    sudo mkdir -p /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  2. เปลี่ยนเป็นไดเรกทอรีใหม่:
    cd /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  3. สร้างไฟล์ JKS ที่มีใบรับรองและคีย์ คุณต้องระบุคีย์สโตร์สำหรับโหมดนี้ ที่มีใบรับรองที่ลงชื่อโดย CA คุณจะใช้ใบรับรองที่ลงนามด้วยตนเองไม่ได้ ตัวอย่างเช่น การสร้างไฟล์ JKS โปรดดูการกำหนดค่า TLS/SSL สำหรับ Edge On Premises
  4. ทำให้ไฟล์ JKS เป็นของ "apigee" ผู้ใช้:
    วันที่
    sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

วิธีกำหนดค่าโมดูล SSO ของ Apigee

  1. เพิ่มการตั้งค่าต่อไปนี้ในไฟล์การกำหนดค่า
    # Enable SSL_TERMINATION mode.
    SSO_TOMCAT_PROFILE=SSL_TERMINATION
    
    # Specify the path to the keystore file.
    SSO_TOMCAT_KEYSTORE_FILEPATH=/opt/apigee/customer/application/apigee-sso/tomcat-ssl/keystore.jks
    
    SSO_TOMCAT_KEYSTORE_ALIAS=sso
    
    # The password specified when you created the keystore.
    SSO_TOMCAT_KEYSTORE_PASSWORD=keystorePassword
    
    # Specify the HTTPS port number between 1025 and 65535.
    # Typically ports 1024 and below require root access by apigee-sso.
    # The default is 9099.
    SSO_TOMCAT_PORT=9443
    SSO_PUBLIC_URL_PORT=9443
    
    # Set public access scheme of apigee-sso to https.
    SSO_PUBLIC_URL_SCHEME=https
  2. กำหนดค่าโมดูล SSO ของ Apigee ดังนี้
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. อัปเดตการกำหนดค่า IDP เพื่อส่งคำขอ HTTPS ในพอร์ต 9443 ของการโหลด สำหรับการเข้าถึง SSO ของ Apigee ตรวจสอบว่าไม่มีบริการอื่นกำลังใช้พอร์ตนี้อยู่

    โปรดดูข้อมูลต่อไปนี้สำหรับข้อมูลเพิ่มเติม

  4. อัปเดตการกำหนดค่า Edge UI สำหรับ HTTPS โดยการตั้งค่าพร็อพเพอร์ตี้ต่อไปนี้
    SSO_PUBLIC_URL_PORT=9443
    SSO_PUBLIC_URL_SCHEME=https
  5. หากคุณติดตั้งพอร์ทัลบริการสำหรับนักพัฒนาซอฟต์แวร์ไว้ ให้อัปเดตพอร์ทัลเพื่อใช้ HTTPS เพื่อ เข้าถึง SSO ของ Apigee ดูข้อมูลเพิ่มเติมได้ที่ กำหนดค่าพอร์ทัลเพื่อใช้ IdP ภายนอก

ตั้งค่า SSO_TOMCAT_PROXY_PORT เมื่อใช้โหมด SSL_TERMINATION

คุณอาจมีตัวจัดสรรภาระงานอยู่หน้าโมดูล SSO ของ Apigee ที่สิ้นสุด TLS ในการโหลด ของตัวจัดสรรภาระงานแต่ยังเปิดใช้ TLS ระหว่างตัวจัดสรรภาระงานและ SSO ของ Apigee ด้วย ในรูปด้านบน สำหรับโหมด SSL_PROXY หมายความว่าการเชื่อมต่อจากตัวจัดสรรภาระงานไปยัง SSO ของ Apigee ใช้ TLS

ในสถานการณ์นี้ คุณจะต้องกำหนดค่า TLS ใน SSO ของ Apigee เหมือนที่เคยทำข้างต้น โหมด SSL_TERMINATION แต่หากการโหลด ตัวจัดสรรภาระงานใช้หมายเลขพอร์ต TLS ที่แตกต่างจาก SSO ของ Apigee ที่ใช้สำหรับ TLS คุณจึงต้องระบุด้วย พร็อพเพอร์ตี้ SSO_TOMCAT_PROXY_PORT ในไฟล์การกำหนดค่า เช่น

  • ตัวจัดสรรภาระงานจะสิ้นสุด TLS บนพอร์ต 443
  • Apigee SSO สิ้นสุด TLS บนพอร์ต 9443

ตรวจสอบว่าได้รวมการตั้งค่าต่อไปนี้ไว้ในไฟล์การกำหนดค่า

# Specify the port number on the load balancer for terminating TLS.
# This port number is necessary for apigee-sso to generate redirect URLs.
SSO_TOMCAT_PROXY_PORT=443
SSO_PUBLIC_URL_PORT=443

กำหนดค่า IDP และ Edge UI เพื่อส่งคำขอ HTTPS บนพอร์ต 443