thanks Eduard。  It is not necessary to mark whold DB as RO, only want to mark partial CLS as RO。 I found this feature,so is there any options about CLS for mark it as RO。

I tried your method yet。Before base64 encryption, the string is encrypted by AES. If the string is encrypted by intercepting the string, if the Chinese character is encountered, the AES encryption string of one Chinese character will be probably intercepted into two strings, and the encrypted data will have problems。

2 solutions,1、use WCF provide resident local service for front-end call to obtain real local IP;2、encapsulate a browser provided method for the front end to call;      In fact, I used both, in different ways in different scenes

Yes, I want to record what actions were performed from which IP. The reason I wanted to find the answer at %Request was because I was bothered by another question. My application is B/S structure, the front-end is implemented by React, and the method of getting local IP address by Javascripts is incompatible with IE, Chrome, Firefox and so on. Because Chrome is not compatible with ActiveX. If I can, I want to get the IP address in a unified way, compatible with the browsers above.

Because I want to manage the client through information such as IP address.