شما در حال مشاهده اسناد Apigee Edge هستید.
به مستندات Apigee X بروید . اطلاعات
یک مشتری Cloud با یک حساب پولی می تواند یک میزبان مجازی در یک سازمان ایجاد کند.
بیشتر بدانید :
چه کسی می تواند میزبان های مجازی را در Cloud ایجاد و تغییر دهد
ایجاد و اصلاح میزبان مجازی فقط برای حسابهای پولی در Edge Cloud در دسترس است. کاربری که میزبان مجازی را ایجاد می کند باید در نقش مدیر سازمان یا در نقش سفارشی با مجوزهای تغییر میزبان مجازی باشد. کاربران در نقش های دیگر مجوز ایجاد میزبان مجازی را ندارند.
به عنوان مثال، مشتریان پولی می توانند:
- TLS یک طرفه و دو طرفه را فعال کنید
- keystore/truststore مورد استفاده توسط میزبان مجازی را مشخص کنید
اکانت های رایگان و آزمایشی نمی توانند هاست های مجازی ایجاد یا تغییر دهند و محدود به هاست های مجازی هستند که در زمان ثبت نام Edge برای آنها ایجاد شده است. برای اطلاعات بیشتر در مورد برنامه های قیمت گذاری Edge، به https://apigee.com/api-management/#/pricing مراجعه کنید.
الزامات پیکربندی میزبان مجازی برای Cloud
جدول زیر الزامات ایجاد یک هاست مجازی را خلاصه می کند:
دسته بندی | مورد نیاز | توضیحات |
---|---|---|
نوع حساب | پرداخت شده است | حساب های رایگان و آزمایشی نمی توانند میزبان های مجازی ایجاد یا تغییر دهند. |
نقش کاربر | مدیر سازمان | فقط یک مدیر سازمان می تواند یک میزبان مجازی ایجاد کند، یا یک کاربر در نقش سفارشی که مجوز تغییر میزبان مجازی را دارد. |
تعداد هاست مجازی | حداکثر 20 | شما به حداکثر 20 میزبان مجازی در هر سازمان/محیط در Cloud محدود هستید. توجه : محدودیتی برای تعداد میزبان های مجازی در Private Cloud وجود ندارد. اکثر سازمان ها/محیط ها از دو میزبان مجازی استفاده می کنند: یکی برای HTTP و دیگری برای دسترسی HTTPS. اگر سازمان/محیط شما اجازه دسترسی با استفاده از نامهای دامنه مختلف را میدهد، ممکن است به میزبانهای مجازی بیشتری نیاز داشته باشید. |
URL پایه | شامل پروتکل است | هنگام تعریف URL پایه برای میزبان مجازی، چه در UI یا با API، باید پروتکل (به عنوان مثال، "http://" یا "https://") را به عنوان بخشی از URL مشخص کنید. |
بندر | 443 | شما فقط می توانید یک هاست مجازی در پورت 443 ایجاد کنید. توجه داشته باشید که میتوانید میزبانهای مجازی متعددی را در پورت 443 ایجاد کنید، به شرطی که نام مستعار میزبان منحصربهفرد داشته باشند و همه از TLS پشتیبانی کنند. |
TLS | مورد نیاز | شما فقط می توانید یک میزبان مجازی ایجاد کنید که از TLS از طریق HTTPS پشتیبانی می کند. شما باید قبلاً یک فروشگاه کلید، و در صورت اختیاری یک فروشگاه اعتماد، حاوی گواهی و کلید TLS شما ایجاد کرده باشید. شما باید گواهی امضا شده توسط یک نهاد مورد اعتماد، مانند Symantec یا VeriSign داشته باشید. شما نمی توانید از گواهی خود امضا شده استفاده کنید. اگر به دسترسی HTTP نیاز دارید، با پشتیبانی Apigee Edge تماس بگیرید. |
پروتکل TLS | TLS 1.2 | Edge in the Cloud فقط از TLS نسخه 1.2 پشتیبانی می کند. |
نام مستعار میزبان | منحصر به فرد در سازمان و محیط | نام مستعار میزبان برای ترکیب سازمان/محیط دیگری وجود ندارد. |
نام دامنه | متعلق به مشتری | شما باید صاحب نام دامنه مشخص شده در هاست مجازی باشید. Edge بررسی می کند تا مطمئن شود که نام دامنه، همانطور که توسط نام مستعار میزبان تعریف شده است، با ابرداده در گواهی TLS مطابقت دارد. به طور خاص، Edge اطلاعات زیر را در گواهی بررسی می کند:
حروف عام در SAN یا CN مجاز هستند، برای مثال Edge همچنین تأیید می کند که گواهی منقضی نشده است. |
پشتیبانی از برنامه مشتری SNI | همه برنامه های مشتری که به میزبان مجازی دسترسی دارند باید از SNI پشتیبانی کنند. | پشتیبانی SNI توسط همه برنامه ها مورد نیاز است. |
با استفاده از مرورگر یک هاست مجازی ایجاد کنید
بیشتر نمونههای این بخش از Edge API برای ایجاد یا تغییر میزبانهای مجازی استفاده میکنند، اما میتوانید یک میزبان مجازی در رابط کاربری Edge ایجاد کنید.
برای ایجاد یک میزبان مجازی با استفاده از رابط کاربری Edge:
- به apigee.com/edge وارد شوید.
- Admin > Virtual Hosts را انتخاب کنید.
- محیط را انتخاب کنید، مانند محصول یا آزمایش .
- برای ایجاد یک میزبان مجازی ، + Virtual Host را انتخاب کنید یا نام یک میزبان مجازی موجود را برای ویرایش آن انتخاب کنید.
- برای اطلاعات دقیق در مورد پر کردن فیلدهای میزبان مجازی به جدول بالا مراجعه کنید.
تعریف میزبان مجازی برای TLS یک طرفه
یک شی XML که میزبان مجازی را تعریف می کند. به عنوان مثال، شی XML زیر یک میزبان مجازی برای TLS یک طرفه تعریف می کند:
<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> </SSLInfo> </VirtualHost>
در این تعریف شما:
- نام را به عنوان myTLSVHost مشخص کنید. از نام برای ارجاع به میزبان مجازی در یک پروکسی API یا در تماس API استفاده کنید.
- نام مستعار میزبان را api.myCompany.com تعیین کنید. این دامنه عمومی است که برای دسترسی به APIهای شما همانطور که توسط تعریف DNS و رکورد CNAME تعریف شده است استفاده می شود.
- شماره پورت را 443 مشخص کنید. اگر حذف شود، به طور پیش فرض پورت روی 443 تنظیم می شود.
- TLS را در صورت نیاز فعال کنید.
عنصر<Enable>
برای فعال کردن TLS یک طرفه روی true تنظیم شده است و عناصر و<KeyStore>
ذخیره کلید و نام مستعار کلید مورد استفاده توسط اتصال TLS را مشخص می کنند.
برای فعال کردن TLS دو طرفه،<ClientAuthEnabled>
روی true تنظیم کنید و با استفاده از عنصر<TrustStore>
یک Truststore مشخص کنید. Truststore صادرکننده گواهی مشتری و زنجیره CA گواهی را نگه می دارد که لازم است.
توجه: از آنجایی که Edge در ابتدا از SSL پشتیبانی می کرد، برچسبی که برای پیکربندی TLS استفاده می کنید<SSLInfo>
نام دارد.
توجه داشته باشید که ویژگی های اضافی وجود دارد که می توانید در هاست مجازی تنظیم کنید. برای مرجع برای همه خواص، مرجع ویژگی میزبان مجازی را ببینید.
تصمیم گیری در مورد نحوه تعیین نام keystore و truststore در میزبان مجازی
هنگام پیکربندی یک میزبان مجازی برای پشتیبانی از TLS، با استفاده از یک مرجع ، یک keystore را مشخص میکنید. یک مرجع متغیری است که به جای تعیین مستقیم نام ذخیره کلید یا Truststore، همانطور که در زیر نشان داده شده است، حاوی نام keystore یا truststore است:
<SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> </SSLInfo>
مزیت استفاده از مرجع این است که می توانید مقدار مرجع را تغییر دهید تا ذخیره کلید مورد استفاده میزبان مجازی را تغییر دهید، معمولاً به این دلیل که گواهی در فروشگاه کلید فعلی در آینده نزدیک منقضی می شود. تغییر مقدار مرجع نیازی به راه اندازی مجدد Edge Router ندارد. برای اطلاعات بیشتر در مورد ایجاد و اصلاح مراجع به کار با مراجع مراجعه کنید.
شما فقط می توانید از یک مرجع به keystore و truststore استفاده کنید. شما نمی توانید از ارجاع به نام مستعار استفاده کنید. هنگامی که مرجع را به فروشگاه کلید تغییر میدهید، مطمئن شوید که نام مستعار گواهی مانند فروشگاه کلید قدیمی است.
محدودیت در استفاده از مراجع به keystore و truststore
هنگام استفاده از ارجاع به keystores و truststores باید محدودیت زیر را در نظر بگیرید:
- تنها در صورتی میتوانید از منابع ذخیره کلید و Truststore در میزبانهای مجازی استفاده کنید که از SNI پشتیبانی کنید و SSL را در روترهای Apigee خاتمه دهید.
- اگر در جلوی روترهای Apigee یک Load Balanser دارید و TLS را در Load Balanser خاتمه میدهید، پس نمیتوانید از منابع keystore و truststore در میزبانهای مجازی استفاده کنید.
تعریف میزبان مجازی برای TLS دو طرفه
برای فعال کردن TLS دو طرفه، عنصر <ClientAuthEnabled>
را روی true
تنظیم کنید و با استفاده از یک مرجع با عنصر <TrustStore>
یک Truststore مشخص کنید. Truststore صادرکننده گواهی مشتری و زنجیره CA گواهی را نگه می دارد که لازم است. کلاینت همچنین باید برای TLS دو طرفه به درستی پیکربندی شود.
برای ایجاد یک میزبان مجازی برای TLS دو طرفه، یک شی XML ایجاد کنید که میزبان مجازی را تعریف کند:
<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>true</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> <TrustStore>ref://myTestTruststoreRef</TrustStore> </SSLInfo> </VirtualHost>
در این تعریف شما:
- با تنظیم
<ClientAuthEnabled>
روی true، TLS دو طرفه را فعال کنید. - ارجاع به Truststore را با استفاده از عنصر
<TrustStore>
مشخص کنید. Truststore صادرکننده گواهی مشتری و زنجیره CA گواهی را نگه می دارد که لازم است.
تعریف میزبان مجازی که از گواهی و کلید آزمایشی رایگان Apigee استفاده می کند
اگر یک حساب Edge برای Cloud پولی دارید و هنوز گواهی و کلید TLS ندارید، میتوانید یک میزبان مجازی ایجاد کنید که از گواهی و کلید آزمایشی رایگان Apigee استفاده میکند. این بدان معناست که شما می توانید بدون ایجاد یک فروشگاه کلید، هاست مجازی را ایجاد کنید.
گواهی آزمایشی رایگان Apigee برای دامنه *.apigee.net
تعریف شده است. بنابراین، <HostAlias>
میزبان مجازی نیز باید به شکل *.apigee.net
باشد.
اگر TLS دو طرفه انجام می دهید، همچنان باید عنصر <ClientAuthEnabled>
را روی true
تنظیم کنید و با استفاده از یک مرجع با عنصر <TrustStore>
همانطور که در بالا در تعریف میزبان مجازی برای TLS دو طرفه توضیح داده شد، یک Truststore مشخص کنید.
یک شی XML که میزبان مجازی را با استفاده از گواهی آزمایشی رایگان Apigee و کلید تعریف میکند، عناصر <KeyStore>
و <KeyAlias>
را حذف میکند و آنها را با عنصر <UseBuiltInFreeTrialCert>
جایگزین میکند، همانطور که در زیر نشان داده شده است:
<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>myapi.apigee.net</HostAlias> </HostAliases> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> </SSLInfo> <UseBuiltInFreeTrialCert>true</UseBuiltInFreeTrialCert> </VirtualHost>
مقدار پیش فرض عنصر <UseBuiltInFreeTrialCert>
نادرست است.
برای TLS دو طرفه، میزبان مجازی را به صورت زیر تعریف کنید:
<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>myapi.apigee.net</HostAlias> </HostAliases> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>true</ClientAuthEnabled> <TrustStore>ref://myTestTruststoreRef</TrustStore> </SSLInfo> <UseBuiltInFreeTrialCert>true</UseBuiltInFreeTrialCert> </VirtualHost>
در رابط کاربری Edge، هنگام ایجاد هاست مجازی برای استفاده از گواهی و کلید رایگان Apigee، گزینه Use instructed free trial certificate را انتخاب کنید:
ساخت هاست مجازی
برای ایجاد هاست مجازی از روش زیر استفاده کنید:
- یک ورودی DNS و رکورد CNAME برای دامنه عمومی خود،
api.myCompany.com
برای این مثال، ایجاد کنید که به[org]-[environment].apigee.net
اشاره می کند. - با استفاده از روشی که در اینجا توضیح داده شده است، یک keystore به نام myTestKeystore در این مثال ایجاد و پیکربندی کنید: ایجاد keystore و truststore با استفاده از Edge UI . برای این مثال، مطمئن شوید که keystore از نام مستعار myKeyAlias برای گواهی و کلید خصوصی استفاده می کند.
- گواهی و کلید خود را در فروشگاه کلید آپلود کنید. اطمینان حاصل کنید که نام دامنه مشخص شده توسط گواهی شما با نام مستعار میزبانی که می خواهید برای میزبان مجازی استفاده کنید مطابقت داشته باشد.
با استفاده از Edge UI یا API یک مرجع به keystore ایجاد کنید. مرجع نام keystore و نوع مرجع را
KeyStore
مشخص می کند. برای اطلاعات بیشتر در مورد ایجاد و اصلاح مراجع به کار با مراجع مراجعه کنید.- هاست مجازی را با استفاده از Create a Virtual Host API ایجاد کنید. مطمئن شوید که مرجع ذخیره کلید و نام مستعار کلید صحیح را مشخص کرده اید. برای استفاده از API، از فراخوانی POST API زیر برای ایجاد فروشگاه کلید به نام myTLSVHost استفاده کنید:
curl -X POST -H "Content-Type:application/xml" \ https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/virtualhosts \ -d '<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> </SSLInfo> </VirtualHost>' \ -u orgAdminEmail:password
اگر TLS دو طرفه را با کلاینت انجام می دهید،
<ClientAuthEnabled>
را روی true تنظیم کنید و با استفاده از عنصر<TrustStore>
، Truststore را مشخص کنید. کلاینت باید برای TLS دو طرفه به درستی پیکربندی شود، به این معنی که Edge دارای یک Truststore حاوی صادرکننده گواهی مشتری و زنجیره گواهی است. Truststore را با استفاده از روشی که در اینجا توضیح داده شده ایجاد کنید: ایجاد keystore و truststore با استفاده از Edge UI . اگر پروکسی های API موجود دارید، میزبان مجازی را به عنصر
<HTTPConnection>
در ProxyEndpoint اضافه کنید. میزبان مجازی به طور خودکار به تمام پراکسی های API جدید اضافه می شود. به پیکربندی یک پروکسی API برای استفاده از میزبان مجازی مراجعه کنید.
پس از بهروزرسانی یک پراکسی API برای استفاده از میزبان مجازی، و ایجاد ورودی DNS و رکورد CNAME برای نام مستعار میزبان، میتوانید مطابق شکل زیر به پروکسی API دسترسی پیدا کنید:
https://api.myCompany.com/v1/{project-base-path}/{resource-path}
به عنوان مثال:
https://api.myCompany.com/v1/weather/forecastrss?w=12797282
تغییر میزبان مجازی
دو وظیفه اصلی وجود دارد که مشتریان Cloud پولی برای تغییر میزبان مجازی موجود انجام می دهند:
- تغییر مقدار یک مرجع به یک فروشگاه کلید یا فروشگاه اعتماد.
توجه : هنگامی که یک<KeyStore>
یا<TrustStore>
را برای استفاده از یک مرجع تنظیم کردید، می توانید مقدار مرجع را در هر زمان تغییر دهید. با این حال، اگر بخواهید<KeyStore>
یا<TrustStore>
را برای استفاده از مرجع دیگری تغییر دهید، یا<KeyAlias>
را برای استفاده از نام مستعار دیگری تغییر دهید، باید با پشتیبانی Apigee Edge تماس بگیرید. - تغییر خصوصیات TLS میزبان مجازی.
تغییر مقدار یک مرجع
شما می توانید مقدار یک مرجع را تغییر دهید تا ذخیره کلید یا Truststore مورد استفاده توسط یک میزبان مجازی را تغییر دهید.
قبل از اینکه مقدار مرجع را تغییر دهید:
- یک فروشگاه کلید جدید ایجاد کنید و گواهی و کلید را همانطور که در ایجاد فروشگاه کلید و ذخیرهسازی اعتماد با استفاده از رابط کاربری Edge توضیح داده شده است، آپلود کنید. در فروشگاه کلید جدید، اطمینان حاصل کنید که برای نام مستعار کلید از همان نامی استفاده میکنید که در فروشگاه کلید موجود استفاده میشد .
- در صورت لزوم، یک Truststore جدید ایجاد کنید و یک گواهی آپلود کنید همانطور که در Creating keystore and truststore با استفاده از Edge UI توضیح داده شده است.
- مرجع را همانطور که در کار با مراجع توضیح داده شده تغییر دهید.
تغییر خصوصیات TLS میزبان مجازی
مشتریان پولی می توانند از Update a Virtual Host API برای به روز رسانی میزبان مجازی استفاده کنند. این API به شما امکان می دهد تمام ویژگی های میزبان مجازی را که در مرجع ویژگی میزبان مجازی توضیح داده شده است تنظیم کنید.
هنگامی که میزبان مجازی را تغییر می دهید، Edge اعتبار سنجی مشابه زمانی که یک میزبان مجازی ایجاد می کنید انجام می دهد. یعنی در یک تغییر، Edge تایید می کند که:
- دامنه ای که توسط نام مستعار میزبان مشخص شده است در سازمان و محیط دیگری استفاده نمی شود.
- شما صاحب نام دامنه هستید. به طور خاص، Edge بررسی می کند که اطلاعات زیر در گواهی با نام مستعار میزبان مطابقت داشته باشد:
- CN - نام مشترک
- SAN - نام جایگزین موضوع
- Edge تأیید می کند که گواهی منقضی نشده است.
برای تغییر میزبان مجازی با استفاده از Edge API، موارد زیر را انجام دهید:
با استفاده از Update a Virtual Host API میزبان مجازی را به روز کنید. هنگام استفاده از API، باید تعریف کامل میزبان مجازی را در بدنه درخواست مشخص کنید، نه فقط عناصری را که می خواهید تغییر دهید. در این مثال، مقدار ویژگی
proxy_read_timeout
را تعیین می کنید:curl -X PUT -H "Content-Type:application/xml" \ https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/virtualhosts/{vhost_name} \ -d '<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> </SSLInfo> <Properties> <Property name="proxy_read_timeout">50</Property> </Properties> </VirtualHost>' \ -u orgAdminEmail:password
تغییر یک میزبان مجازی برای استفاده از ارجاعات به keystore و truststore
همه هاست های مجازی جدید برای Edge در Cloud از ارجاع به keystore و truststore استفاده می کنند. مراجع به شما امکان میدهند بدون تماس با پشتیبانی Apigee Edge، keystore و truststore را تغییر دهید.
میزبانهای مجازی قدیمیتر در Apigee Edge ممکن است برای استفاده از مراجع برای ذخیرهسازی کلید و ذخیرهسازی اعتماد پیکربندی نشده باشند. در این صورت می توانید هاست مجازی را برای استفاده از مرجع به روز کنید.
به روز رسانی یک میزبان مجازی برای استفاده از یک مرجع
برای به روز رسانی هاست مجازی از روش زیر استفاده کنید:
- در صورت نیاز، یک فروشگاه کلید جدید ایجاد کنید و یک گواهی آپلود کنید همانطور که در Creating keystore and truststore با استفاده از Edge UI توضیح داده شده است. اگر قبلاً یک فروشگاه کلید دارید، می توانید یک مرجع را برای اشاره به آن پیکربندی کنید.
- یک مرجع جدید به فروشگاه کلید ایجاد کنید.
- در صورت نیاز، یک Truststore جدید ایجاد کنید و یک گواهی آپلود کنید. اگر قبلاً یک Truststore دارید، میتوانید مرجعی را برای اشاره به آن پیکربندی کنید.
- یک مرجع جدید به Truststore ایجاد کنید.
- میزبان مجازی را برای تنظیم keystore، نام مستعار، Truststore و سایر ویژگی های TLS به روز کنید. محموله برای تماس عبارت است از:
curl -X PUT -H "Content-Type:application/xml" \ https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/virtualhosts/{vhost_name} \ -d '<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Port>443</Port> <OCSPStapling>off</OCSPStapling> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>true</ClientAuthEnabled> <KeyStore>ref://myKeyStore2Way</KeyStore> <KeyAlias>keyAlias</KeyAlias> <TrustStore>ref://myTrustStore2Way</TrustStore> <IgnoreValidationErrors>false</IgnoreValidationErrors> </SSLInfo> </VirtualHost>' \ -u orgAdminEmail:pWord
- با پشتیبانی Apigee تماس بگیرید تا مسیریاب های Edge را مجددا راه اندازی کنید تا فرآیند تکمیل شود.