当前位置:网站首页>The maximum expiration time of client secret in azure ad application registration is modified to 2 years
The maximum expiration time of client secret in azure ad application registration is modified to 2 years
2022-07-04 04:00:00 【Justin-Liu】
When our application is used as a confidential client , Credentials are an important part of application registration . We can add certificates and / Or client key ( character string , Also known as passwordCredentials) Credentials registered as confidential client applications .OAuth Client Authenticate the authorization server using application credentials . This key has only OAuth The client and the authorization server know .
Why remove the never expire option for keys ?
In fact, Microsoft has long been 2021 year 4 The month was removed Azure AD Application registration never expires (Never Expire) This option , This decision is mainly based on the following reasons :
- Long life-cycle client keys pose security risks . Although they provide the convenience of credentials that never expire , But this exposure of unmonitored credentials may not be discovered , And may be abused by malicious participants .
- Selecting a client key that never expires is actually from the date of creation , Valid for 99 year . Although it gives the impression that the certificate has a long life , But its validity period is set to 99 year .
- The user experience of the client key is also inconsistent , because Expires The date shown in the list is marked with Never label .
- Mixed representations can lead to API Response and UI atypism . adopt API The returned data has an expiration date of the customer key , And expressed by date value 99 Expiration date of year .
- Multiple applications use the same long-standing key , If the client key is compromised , Then all applications will face risks . Unless actively monitored , Otherwise, the developer may never realize him / Another application in her tenant was hacked , Because their application will never be interrupted .
- Microsoft strongly recommends , All client keys rotate every six months , To ensure the security of applications and processes . There are too many cases where keys are stored in insecure storage locations .
Why is the existing permanent key no longer in Never As the expiration date ?
For existing long-term keys ,UI The exact expiration date can now be displayed ( Format :MM/DD/YYYY) instead of Never, To increase transparency . Although the portal provides a choice Never The option to , But those keys that never expire are set from the date of creation 99 Year term . The previously created value is Never The client key of is set as of the creation date 99 Expires in years .UI Now show the exact date ( Such as 2119/01/02) Not keywords Never, To increase transparency . It also brings data from Microsoft Graph The response of the application is consistent . however , Before the expected expiration date , This will not affect the use of these client keys . As best practice , Microsoft strongly recommends that customers avoid using client keys with long expiration time stamps in production environments .
What is Microsoft's recommendation for client keys ?
Microsoft strongly recommends that you use a certificate issued by a trusted certification authority x509 The certificate is the only credential type for your application to obtain tokens . Monitor your production pipeline , To ensure that no type of credentials are submitted to the code repository . If you are using Azure, Microsoft strongly recommends using managed authentication (Managed Identity), In this way, the credentials of the application will be automatically managed . For more details , see also Hosting authentication documents .
If you have to use a client key , Microsoft recommends that you set the secret expiration time to 6 Months . When processing application documents , Please consider these other Suggest . Microsoft also offers Credential Scanner, This is a static analysis tool , You can use it to detect credentials in the source code ( And other sensitive content ) And build the output .
The plan and vision of the client key is to make API Consistent with the portal experience , That is, the maximum service life is allowed to be two years . Microsoft will announce these changes through various channels , Such as Azure AD Breakthrough changes and Azure Monthly Roadmap . Now? , If you want a long-term key , You can use Microsoft Graph API or PowerShell cmdlet To set a key that is valid for more than two years . We will delete this option later , To better protect Azure AD All applications in . When the , All new keys will be limited to a maximum period of two years .
The resources
application: addPassword – Microsoft Graph beta | Microsoft Docs
New-AzureADApplicationPasswordCredential (AzureAD) | Microsoft Docs
边栏推荐
- Huawei cloud Kunpeng engineer training (Guangxi University)
- Wechat official account web page authorization
- 微信公众号网页授权
- 用于TCP协议交互的TCPClientDemo
- Katalon使用script实现查询List大小
- [.NET + mqtt]. Mise en œuvre de la communication mqtt dans l'environnement net 6 et démonstration de code pour l'abonnement et la publication de messages bilatéraux du serveur et du client
- JSON string conversion in unity
- warning: LF will be replaced by CRLF in XXXXXX
- Getting started with the go language is simple: go implements the Caesar password
- system information
猜你喜欢
Tcpclientdemo for TCP protocol interaction
[untitled]
Infiltration practice guest account mimikatz sunflower SQL rights lifting offline decryption
Consul of distributed service registration discovery and unified configuration management
Two sides of the evening: tell me about the bloom filter and cuckoo filter? Application scenario? I'm confused..
New year's first race, submit bug reward more!
Unity移动端游戏性能优化简谱之 画面表现与GPU压力的权衡
Nbear introduction and use diagram
Mitsubishi M70 macro variable reading Mitsubishi M80 public variable acquisition Mitsubishi CNC variable reading acquisition Mitsubishi CNC remote tool compensation Mitsubishi machine tool online tool
拼夕夕二面:说说布隆过滤器与布谷鸟过滤器?应用场景?我懵了。。
随机推荐
Sales management system of lightweight enterprises based on PHP
深入浅出对话系统——使用Transformer进行文本分类
Package details_ Four access control characters_ Two details of protected
Value transfer communication between components (parent to child, child to parent, brother component to value)
[untitled]
Katalon framework tests web (XXI) to obtain element attribute assertions
Wechat official account web page authorization
CSP drawing
潘多拉 IOT 开发板学习(HAL 库)—— 实验6 独立看门狗实验(学习笔记)
用于TCP协议交互的TCPClientDemo
Calculate the odd sum of 1~n (1~100 as an example)
Redis notes (I) Linux installation process of redis
如何有效远程办公之我见 | 社区征文
what does ctrl + d do?
If you have just joined a new company, don't be fired because of your mistakes
Is it really so difficult to learn redis? Today, a fan will share his personal learning materials!
Nbear introduction and use diagram
【.NET+MQTT】.NET6 環境下實現MQTT通信,以及服務端、客戶端的雙邊消息訂閱與發布的代碼演示
Easy to win insert sort
CUDA basic knowledge