Apigee Edge for Private Cloud के लिए, साउथबाउंड हार्डवेयर सिक्योरिटी मॉड्यूल इंटिग्रेशन गाइड

रिलीज़ वर्शन: Edge for Private Cloud v4.53.01.02 पैच रिलीज़ और इसके बाद के वर्शन.

इस पेज पर, Entrust nShield® 5c नेटवर्क हार्डवेयर सुरक्षा मॉड्यूल (एचएसएम) का इस्तेमाल करके, साउथबाउंड टीएलएस कनेक्शन (Apigee Message Processors से बैकएंड टारगेट सेवाओं तक) कॉन्फ़िगर करने का तरीका बताया गया है.

तीसरे पक्ष के कॉन्टेंट के लिए अस्वीकरण: इस पेज पर, Entrust nShield हार्डवेयर को कॉन्फ़िगर करने के तरीके के बारे में बताया गया है. इसमें Apigee Edge इंटिग्रेशन से जुड़ी जानकारी शामिल है. ये चरण, इंटिग्रेशन के स्टैंडर्ड पैटर्न पर आधारित हैं और इन्हें सिर्फ़ जानकारी देने के मकसद से उपलब्ध कराया गया है. Entrust के कॉन्फ़िगरेशन में, मैन्युफ़ैक्चरर बदलाव कर सकता है. कृपया आधिकारिक Entrust दस्तावेज़ पोर्टल पर जाकर, ज़रूरी स्पेसिफ़िकेशन, सुरक्षा कॉन्फ़िगरेशन, और हार्डवेयर की मौजूदा ज़रूरी शर्तों के बारे में जानें.

खास जानकारी

हार्डवेयर सुरक्षा मॉड्यूल (एचएसएम), सुरक्षित तरीके से कुंजी सेव करने और क्रिप्टोग्राफ़िक कार्रवाइयों के लिए, एक खास और सुरक्षित एनवायरमेंट उपलब्ध कराते हैं. Apigee Edge for Private Cloud को Entrust nShield HSM के साथ इंटिग्रेट करके, साउथबाउंड टीएलएस और एमटीएलएस हैंडशेक में इस्तेमाल की जाने वाली निजी कुंजियों को सुरक्षित किया जा सकता है.

Apigee, आउटगोइंग साउथबाउंड एचटीटीपीएस ट्रैफ़िक के लिए, इन कॉम्पोनेंट के साथ HSM इंटिग्रेशन की सुविधा देता है:

  • टारगेट एंडपॉइंट
  • टारगेट सर्वर
  • Service Callout की नीतियां
  • Message Logging की नीतियां
  • JavaScript की नीतियां

ज़रूरी शर्तें

एचएसएम इंटिग्रेशन को कॉन्फ़िगर करने से पहले, पक्का करें कि आपने यहां दी गई शर्तें पूरी की हैं:

1. सॉफ़्टवेयर वर्शन की ज़रूरी शर्तें

  • Apigee Edge for Private Cloud क्लस्टर, 4.53.01.02 या इसके बाद वाले वर्शन पर चलना चाहिए.
  • एचएसएम इंटिग्रेशन, इन आरपीएम वर्शन (या इसके बाद वाले वर्शन) में पहले से शामिल है:
    • edge-management-server-4.53.01-0.0.60380.noarch.rpm
    • edge-message-processor-4.53.01-0.0.60380.noarch.rpm
    • edge-gateway-4.53.01-0.0.60380.noarch.rpm

2. इंफ़्रास्ट्रक्चर और ऑपरेटिंग सिस्टम का कॉन्फ़िगरेशन

  • Edge for Private Cloud क्लस्टर को होस्ट करने वाले ओएस पर, FIPS की सुविधा बंद होनी चाहिए.
  • सभी Message Processor नोड पर, एचएसएम क्लाइंट और Security World इंस्टॉल और कॉन्फ़िगर होना चाहिए.
  • अहम जानकारी: ये चरण, apigee उपयोगकर्ता को पूरे करने होंगे.

आधिकारिक Entrust nShield दस्तावेज़ में दिए गए, स्टैंडर्ड JCA/JCE CSP इंस्टॉलेशन टेस्ट को चलाकर, पुष्टि करें कि एचएसएम क्लाइंट का इंस्टॉलेशन सही तरीके से कॉन्फ़िगर किया गया है और apigee उपयोगकर्ता इसे ऐक्सेस कर सकता है. पक्का करें कि यह टेस्ट, सभी Message Processor नोड पर सफलतापूर्वक पूरा हो.

काम करने वाले कॉन्फ़िगरेशन

Apigee को दो मोड में एचएसएम का इस्तेमाल करने के लिए कॉन्फ़िगर किया जा सकता है:

इस मोड में, सिर्फ़ निजी कुंजियां (KeyStore) एचएसएम में सेव की जाती हैं. वहीं, भरोसेमंद सर्टिफ़िकेट (TrustStore), Apigee सॉफ़्टवेयर के स्टैंडर्ड स्टोर में ही सेव किए जाते हैं.

2. फ़ुल एचएसएम मोड

इस मोड में, KeyStore (निजी कुंजियां) और TrustStore (भरोसेमंद सर्टिफ़िकेट), दोनों ही एचएसएम में सेव किए जाते हैं. यह मोड काम करता है, लेकिन इससे अतिरिक्त देरी हो सकती है.

पहला चरण: Message Processors पर एचएसएम की सुविधा चालू करना

हर Message Processor नोड पर, एक-एक करके ये चरण पूरे करें:

1. Message Processor को बंद करना

apigee-service edge-message-processor stop

2. एचएसएम KeyStore की डेटा फ़ाइल की पुष्टि करना

पक्का करें कि एचएसएम KeyStore की डेटा फ़ाइल (एचएसएम में लोड की गई कुंजियों का रेफ़रंस देने वाली) Message Processor नोड पर मौजूद हो और इसका मालिकाना हक apigee उपयोगकर्ता के पास हो:

chown apigee:apigee /opt/apigee/{name_of_the_Keystore_Data_File}

3. एचएसएम कॉन्फ़िगरेशन फ़ाइल बनाना

/opt/apigee/hsm-config.properties पर कॉन्फ़िगरेशन फ़ाइल बनाएं या अपडेट करें. एचएसएम keystore और (ज़रूरी नहीं) truststore के लिए, जगह और पासवर्ड तय करें.

कॉन्फ़िगरेशन का उदाहरण (मिक्स और फ़ुल एचएसएम प्रॉक्सी, दोनों के साथ काम करने वाला):

# HSM KeyStore Reference
hsm.property.unique_keystore_ref1.keystore.file.location=/opt/apigee/ks.keystore
hsm.property.unique_keystore_ref1.keystore.password=keystore_password

# HSM TrustStore Reference (Optional, only needed for Full HSM Mode)
hsm.property.unique_truststore_ref1.truststore.file.location=/opt/apigee/ts.truststore
hsm.property.unique_truststore_ref1.truststore.password=truststore_password

सही अनुमतियां सेट करें:

chown apigee:apigee /opt/apigee/hsm-config.properties
chmod 600 /opt/apigee/hsm-config.properties

4. Message Processor की प्रॉपर्टी कॉन्फ़िगर करना

/opt/apigee/customer/application/message-processor.properties बनाएं या उसमें बदलाव करें और यह जानकारी जोड़ें:

# Enable HSM Integration
conf_system_apigee.hsm.enabled=true

# HSM Configuration File Path
conf_system_apigee.hsm.properties.file=/opt/apigee/hsm-config.properties

# Advanced Custom HSM Port Support (Optional, default is 9000/9001)
# conf_system_apigee.hsm.priv_port=9001
# conf_system_apigee.hsm.nonpriv_port=9000

पक्का करें कि मालिकाना हक सही हो:

chown apigee:apigee /opt/apigee/customer/application/message-processor.properties

5. फिर से कॉन्फ़िगर करना और रीस्टार्ट करना

apigee-service edge-message-processor configure
apigee-service edge-message-processor restart

6. शुरू होने की पुष्टि करना

सिस्टम लॉग /opt/apigee/var/log/edge-message-processor/logs/system.log में, सफलतापूर्वक शुरू होने के मैसेज देखें:

main INFO  SECURITY-CONTEXT - SSLPreEvaluationContext.isHSMConfigEnabled() : HSM_FLOW : HSM config is enabled
main INFO  SECURITY-CONTEXT - SSLPreEvaluationContext.loadProperties() : HSM_FLOW :  HSM config properties loaded from file /opt/apigee/hsm-config.properties

दूसरा चरण: एपीआई प्रॉक्सी कॉन्फ़िगर करना

एपीआई प्रॉक्सी कॉन्फ़िगरेशन (TargetEndpoint, ServiceCallout या नीतियां) में, SSLInfo ब्लॉक को अपडेट करें. एचएसएम से मैनेज किए जाने वाले स्टोर का रेफ़रंस देने के लिए, hsmref:// प्रीफ़िक्स का इस्तेमाल करें. वहीं, सॉफ़्टवेयर स्टोर के लिए, ref:// (या स्टैंडर्ड रेफ़रंस नाम) का इस्तेमाल करें.

KeyStore (क्लाइंट की पुष्टि) के लिए एचएसएम और TrustStore के लिए सॉफ़्टवेयर का इस्तेमाल करता है.

<SSLInfo>
    <Enabled>true</Enabled>
    <ClientAuthEnabled>true</ClientAuthEnabled>
    <KeyStore>hsmref://unique_keystore_ref1</KeyStore>
    <TrustStore>ref://mySoftwareTrustStoreRef</TrustStore>
</SSLInfo>

2. फ़ुल एचएसएम कॉन्फ़िगरेशन

KeyStore और TrustStore, दोनों के लिए एचएसएम का इस्तेमाल करता है.

<SSLInfo>
    <Enabled>true</Enabled>
    <ClientAuthEnabled>true</ClientAuthEnabled>
    <KeyStore>hsmref://unique_keystore_ref1</KeyStore>
    <TrustStore>hsmref://unique_truststore_ref1</TrustStore>
</SSLInfo>

डिप्लॉयमेंट के दौरान, पुष्टि करने की प्रोसेस को बायपास करना

Apigee के Cassandra डेटाबेस में निजी कुंजियां अपलोड किए बिना डिप्लॉयमेंट की सुविधा देने के लिए, Apigee, hsmref:// प्रीफ़िक्स से शुरू होने वाले किसी भी रेफ़रंस के लिए, डिप्लॉयमेंट के दौरान एनवायरमेंट keystore/truststore के मौजूद होने की जांच को अपने-आप बायपास कर देता है.

कार्रवाइयां: नए एचएसएम keystore/truststore जोड़ना

किसी मौजूदा चालू एनवायरमेंट में, नया एचएसएम keystore या truststore जोड़ने के लिए:

  1. कुंजियों/सर्टिफ़िकेट को फ़िज़िकल एचएसएम में लोड करें (एचएसएम में keystore/truststore लोड करना देखें).
  2. नए KeyStore की डेटा फ़ाइल को Message Processor नोड पर कॉपी करें और मालिकाना हक apigee को दें.
  3. सभी Message Processor नोड पर, /opt/apigee/hsm-config.properties को नए रेफ़रंस के साथ अपडेट करें:
    hsm.property.new_keystore_ref.keystore.file.location=/opt/apigee/new_ks.keystore
    hsm.property.new_keystore_ref.keystore.password=new_password
        
  4. हर नोड पर, Message Processor को रीस्टार्ट करें:
    apigee-service edge-message-processor restart
  5. नए hsmref://new_keystore_ref का इस्तेमाल करने के लिए, एपीआई प्रॉक्सी कॉन्फ़िगरेशन को अपडेट करें और डिप्लॉय करें.

ग्लोबल तौर पर एचएसएम की सुविधा बंद करना

एचएसएम की सुविधा बंद करने के लिए:

  1. hsmref:// का इस्तेमाल करने वाली सभी चालू प्रॉक्सी को, स्टैंडर्ड सॉफ़्टवेयर रेफ़रंस (ref://) का इस्तेमाल करने के लिए अपडेट करें.
  2. हर Message Processor नोड पर, /opt/apigee/customer/application/message-processor.properties में बदलाव करें और यह सेटिंग करें:
    conf_system_apigee.hsm.enabled=false
  3. Message Processor को फिर से कॉन्फ़िगर करें और रीस्टार्ट करें:
    apigee-service edge-message-processor configure
    apigee-service edge-message-processor restart

सीमाएं और सावधानियां

  • काम करने वाला हार्डवेयर: सिर्फ़ Entrust nShield 5c नेटवर्क एचएसएम के साथ काम करता है.
  • देखभाल: एचएसएम सर्वर/क्लाइंट की देखभाल की ज़िम्मेदारी ग्राहकों की होती है.
  • देरी: एचएसएम के साथ नेटवर्क नेगोशिएशन की वजह से, अतिरिक्त देरी हो सकती है. एचएसएम मिक्स मोड का इस्तेमाल करने से, इस समस्या को कुछ हद तक कम किया जा सकता है.
  • एचएसएम रीस्टार्ट करना: अगर एचएसएम हार्डसर्वर रीस्टार्ट होता है, तो आपको कनेक्ट किए गए Message Processor नोड पर, edge-message-processor को रीस्टार्ट करना होगा.

एचएसएम में keystore/truststore लोड करना

एचएसएम में PKCS12 keystore या PEM सर्टिफ़िकेट इंपोर्ट करने के लिए, ज़रूरी keytool कमांड जानने के लिए, आधिकारिक Entrust nShield दस्तावेज़ पोर्टल देखें.

Apigee के साथ काम करने के लिए, एचएसएम keystore की फ़ाइलें इन ज़रूरी शर्तों को पूरा करनी चाहिए:

  • डायरेक्ट्री: इसे /opt/apigee/ में सेव किया जाना चाहिए. जैसे, /opt/apigee/hsmks.keystore
  • अनुमतियां: इसका मालिकाना हक apigee उपयोगकर्ता के पास होना चाहिए (chown apigee:apigee /opt/apigee/<filename>)
  • रीड करने की अनुमति: edge-message-processor सेवा के पास इसे रीड करने की अनुमति होनी चाहिए.

गड़बड़ी का रेफ़रंस

गड़बड़ी का कोड एचटीटीपी स्टेटस ब्यौरा / वजह
entities.HsmConfigNotEnabled 500 किसी एपीआई प्रॉक्सी ने रनटाइम पर hsmref:// का इस्तेमाल करने की कोशिश की, लेकिन Message Processor पर, एचएसएम की सुविधा को ग्लोबल तौर पर बंद कर दिया गया है (conf_system_apigee.hsm.enabled=false).

Entrust और nShield, Entrust Corporation या उसकी सहयोगी कंपनियों के ट्रेडमार्क या रजिस्टर किए गए ट्रेडमार्क हैं. दूसरे सभी ट्रेडमार्क उनसे जुड़े मालिकों की प्रॉपर्टी हैं.