Edge for Private Cloud نسخه 4.18.01
بعد از اینکه SAML را در Edge فعال کردید، می توانید Basic Auth را غیرفعال کنید. با این حال، قبل از غیرفعال کردن Basic Auth :
- مطمئن شوید که همه کاربران Edge از جمله مدیران سیستم را به SAML IDP خود اضافه کرده اید.
- مطمئن شوید که احراز هویت SAML را روی رابط کاربری Edge و API مدیریت Edge به طور کامل آزمایش کردهاید.
- اگر از API BaaS نیز استفاده می کنید، SAML را روی API BaaS پیکربندی و آزمایش کنید. فعال کردن SAML برای API BaaS را ببینید.
- اگر از پورتال Developer Services استفاده می کنید، SAML را روی پورتال پیکربندی و آزمایش کنید تا مطمئن شوید که پورتال می تواند به Edge متصل شود. به پیکربندی پورتال خدمات توسعه دهنده برای استفاده از SAML برای برقراری ارتباط با Edge مراجعه کنید.
مشاهده نمایه امنیتی فعلی
میتوانید نمایه امنیتی Edge را مشاهده کنید تا پیکربندی فعلی را تعیین کنید تا مشخص کنید آیا Basic Auth و SAML در حال حاضر فعال هستند یا خیر. از فراخوانی API مدیریت Edge زیر در سرور مدیریت Edge برای مشاهده نمایه امنیتی فعلی استفاده شده توسط Edge استفاده کنید:
> curl -H "accept:application/xml" http://localhost:8080/v1/securityprofile -u sysAdminEmail:pWord
اگر هنوز SAML را پیکربندی نکردهاید، پاسخ مانند تصویر زیر است به این معنی که تأیید اولیه فعال است:
<SecurityProfile enabled="true" name="securityprofile"> <UserAccessControl enabled="true"> </UserAccessControl> </SecurityProfile>
اگر قبلا SAML را فعال کرده اید، تگ <ssoserver> را در خروجی مشاهده می کنید:
<SecurityProfile enabled="true" name="securityprofile"> <UserAccessControl enabled="true"> <SSOServer> <BasicAuthEnabled>true</BasicAuthEnabled> <PublicKeyEndPoint>/token_key</PublicKeyEndPoint> <ServerUrl>http://35.197.37.220:9099</ServerUrl> </SSOServer> </UserAccessControl> </SecurityProfile>
توجه داشته باشید که نسخهای که SAML فعال است ، <BasicAuthEnabled>true</BasicAuthEnabled> را نیز نشان میدهد به این معنی که تأیید اولیه هنوز فعال است.
غیرفعال کردن اعتبار پایه
از فراخوانی API مدیریت Edge زیر در سرور مدیریت Edge برای غیرفعال کردن Basic Auth استفاده کنید. توجه داشته باشید که شی XML را که در بخش قبل بازگردانده است به عنوان بار ارسال می کنید. تنها تفاوت این است که <BasicAuthEnabled>false</BasicAuthEnabled> را تنظیم می کنید:
> curl -H "Content-Type: application/xml" http://localhost:8080/v1/securityprofile -u sysAdminEmail:pWord -d '<SecurityProfile enabled="true" name="securityprofile"> <UserAccessControl enabled="true"> <SSOServer> <BasicAuthEnabled>false</BasicAuthEnabled> <PublicKeyEndPoint>/token_key</PublicKeyEndPoint> <ServerUrl>http://35.197.37.220:9099</ServerUrl> </SSOServer> </UserAccessControl> </SecurityProfile>'
پس از غیرفعال کردن Basic Auth، هر فراخوانی API مدیریت Edge که اعتبارنامه Basic Auth را پاس میکند، خطای زیر را برمیگرداند:
<Error> <Code>security.SecurityProfileBasicAuthDisabled</Code> <Message>Basic Authentication scheme not allowed</Message> <Contexts/> </Error>
احراز هویت پایه را دوباره فعال کنید
اگر به هر دلیلی مجبور به فعال کردن مجدد Basic Auth هستید، باید مراحل زیر را انجام دهید:
احتیاط : به عنوان بخشی از فعال کردن مجدد Basic Auth، باید به طور موقت همه احراز هویت را در Edge غیرفعال کنید، از جمله SAML.
- به هر گره Edge ZooKeeper وارد شوید.
- اسکریپت bash زیر را برای خاموش کردن تمام امنیت اجرا کنید:
احتیاط : این مرحله همه احراز هویت در Edge از جمله SAML را غیرفعال میکند.
#! /bin/bash/opt/apigee/apigee-zookeeper/bin/zkCli.sh -server localhost:2181 <<EOFتنظیم /system/securityprofile <SecurityProfile></SecurityProfile>ترک کردنEOF
خروجی را به شکل زیر مشاهده خواهید کرد:
اتصال به لوکال هاست: 2181
به ZooKeeper خوش آمدید!
پشتیبانی JLine فعال است
ناظر::وضعیت WatchedEvent: SyncConnected type: None path:null[zk: localhost:2181(متصل شده) 0] مجموعه /system/securityprofile <SecurityProfile></SecurityProfile>cZxid = 0x89...
[zk: localhost:2181(CONNECTED) 1] خارج شد
در حال ترک… - احراز هویت پایه و SAML را دوباره فعال کنید:
> curl -H "Content-Type: application/xml"
اکنون می توانید دوباره از Basic Auth استفاده کنید.
http://localhost:8080/v1/securityprofile -u sysAdminEmail:pWord -d
'<SecurityProfile enabled="true" name="securityprofile">
<UserAccessControl enabled="true">
<SSOSserver>
<BasicAuthEnabled>درست</BasicAuthEnabled>
<PublicKeyEndPoint>/token_key</PublicKeyEndPoint>
<ServerUrl>http://35.197.37.220:9099</ServerUrl>
</SSOSserver>
</UserAccessControl>
</SecurityProfile>'