curl AADSTS1002016:您正在使用已弃用的TLS版本1.0、1.1和/或3DES加密算法,以改进Azure AD的安全状况

2izufjch  于 2022-11-13  发布在  其他
关注(0)|答案(1)|浏览(689)

我在我的一个PHP应用程序上启用了Azure登录,并按照以下文档使用cUrl https://learn.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-auth-code-flow启用了此功能
它一直工作正常,直到几天前,收到授权码后,当我提出令牌的请求,即https://login.microsoftonline.com/{tenant_id}/oauth2/v2.0/token
我得到一个错误

{"error":"invalid_request","error_description":"AADSTS1002016: You are using TLS version 1.0, 1.1 and/or 3DES cipher which are deprecated to improve the security posture of Azure AD. Your TenantID is: {tenant_id}. Please refer to https://go.microsoft.com/fwlink/?linkid=2161187 and conduct needed actions to remediate the issue. For further questions, please contact your administrator."}

已经禁用了应用服务器上的tls 1和1.0以及3DES密码。负载平衡器上也有相同的配置。
我的/etc/httpd/conf.d/ssl.conf文件包含以下内容

SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5:!DES:!3DES
 SSLHonorCipherOrder on
 SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
tez616oj

tez616oj1#

需要强制执行curl以使用tls1.2

curl --tlsv1.2 {...REST_OF_CURL}

PHP程式码

$chwnd = curl_init();
curl_setopt ($chwnd, CURLOPT_SSLVERSION, 6);
curl_exec($chwnd);

相关问题