กําหนดค่า apigee-sso สําหรับการเข้าถึง HTTPS

Edge for Private Cloud เวอร์ชัน 4.17.09

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

SSO_TOMCAT_PROFILE=DEFAULT

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

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

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

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

เปิดใช้โหมด SSL_PROXY

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

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

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

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

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

  1. เพิ่มการตั้งค่าต่อไปนี้ลงในไฟล์การกำหนดค่า
    # Enable SSL_PROXY mode.
    SSO_TOMCAT_PROFILE=SSL_PROXY

    # ระบุพอร์ต apigee-sso ซึ่งโดยปกติจะอยู่ระหว่าง 1025 ถึง 65535
    # โดยปกติแล้ว พอร์ต 1024 และพอร์ตที่ต่ำกว่านั้นต้องใช้สิทธิ์เข้าถึงระดับรูทโดย apigee-sso
    # ค่าเริ่มต้นคือ 9099
    SSO_TOMCAT_PORT=9099

    # ระบุหมายเลขพอร์ตในตัวจัดสรรภาระงานสำหรับการสิ้นสุด 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. กำหนดค่าโมดูล Edge SSO:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. อัปเดตการกำหนดค่า IDP เพื่อส่งคำขอ HTTPS ในพอร์ต 443 ของตัวจัดสรรภาระงานเพื่อเข้าถึง Edge SSO ดูข้อมูลเพิ่มเติมได้ที่หัวข้อกำหนดค่า SAML IDP
  4. อัปเดตการกำหนดค่า Edge UI สำหรับ HTTPS โดยตั้งค่าพร็อพเพอร์ตี้ต่อไปนี้
    SSO_PUBLIC_URL_PORT=443
    SSO_PUBLIC_URL_SCHEME=https


    ดูข้อมูลเพิ่มเติมได้ที่หัวข้อเปิดใช้ SAML ใน Edge UI
  5. หากคุณติดตั้งพอร์ทัลบริการสำหรับนักพัฒนาซอฟต์แวร์หรือ API BaaS ให้อัปเดตเพื่อใช้ HTTPS เพื่อเข้าถึง Edge SSO ดูข้อมูลเพิ่มเติมได้ที่

เปิดใช้โหมด SSL_TERMINATION

สำหรับโหมด SSL_TERMINATION คุณต้องทำดังนี้

  • สร้างใบรับรองและคีย์ TLS แล้วจัดเก็บไว้ในไฟล์คีย์สโตร์ คุณไม่สามารถใช้ใบรับรองแบบ Self-signed คุณต้องสร้างใบรับรองจาก 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 คุณไม่สามารถใช้ใบรับรองแบบ Self-signed ได้ ดูตัวอย่างการสร้างไฟล์ JKS ได้ที่การกำหนดค่า TLS/SSL สำหรับ Edge On Premises
  4. กำหนดให้ไฟล์ JKS เป็นของผู้ใช้ "apigee" โดยทำดังนี้
    > sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

วิธีกำหนดค่าโมดูล Edge SSO

  1. เพิ่มการตั้งค่าต่อไปนี้ลงในไฟล์การกำหนดค่า
    # Enable SSL_TERMINATION mode.
    SSO_TOMCAT_PROFILE=SSL_TERMINATION

    # ระบุเส้นทางไปยังไฟล์คีย์สโตร์
    SSO_TOMCAT_KEYSTORE_FILEPATH=/opt/apigee/customer/application/apigee-sso/tomcat-ssl/keystore.jks
    SSO_TOMCAT_KEYSTORE_ALIAS=sso

    # รหัสผ่านที่ระบุเมื่อคุณสร้างคีย์สโตร์
    SSO_TOMCAT_KEYSTORE_PASSWORD=keystorePassword

    # ระบุหมายเลขพอร์ต HTTPS ระหว่าง 1025 ถึง 65535
    # โดยปกติแล้ว พอร์ต 1024 และพอร์ตที่ต่ำกว่านั้นต้องใช้สิทธิ์เข้าถึงระดับรูทโดย apigee-sso
    # ค่าเริ่มต้นคือ 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. กำหนดค่าโมดูล Edge SSO:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. อัปเดตการกำหนดค่า IDP เพื่อส่งคำขอ HTTPS ในพอร์ต 9443 ของตัวจัดสรรภาระงานเพื่อเข้าถึง Edge SSO ดูข้อมูลเพิ่มเติมได้ที่หัวข้อกำหนดค่า SAML IDP
  4. อัปเดตการกำหนดค่า Edge UI สำหรับ HTTPS โดยตั้งค่าพร็อพเพอร์ตี้ต่อไปนี้
    SSO_PUBLIC_URL_PORT=9443
    SSO_PUBLIC_URL_SCHEME=https


    ดูข้อมูลเพิ่มเติมได้ที่เปิดใช้ SAML ใน Edge UI
  5. หากคุณติดตั้งพอร์ทัลบริการสำหรับนักพัฒนาซอฟต์แวร์หรือ API BaaS ให้อัปเดตเพื่อใช้ HTTPS เพื่อเข้าถึง Edge SSO ดูข้อมูลเพิ่มเติมได้ที่

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

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

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

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

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

# ระบุหมายเลขพอร์ตในตัวจัดสรรภาระงานสำหรับการสิ้นสุด 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