Go의 X509 인증서에서 전체 주체 또는 발급자 DN 검색
X509 인증서에서 전체 주체 또는 발급자 고유 이름(DN) 검색 몇 단계를 거쳐 문자열로 변환할 수 있습니다.
솔루션 세부 정보:
OID를 속성 이름에 매핑:
RDNSequence를 문자열로 변환:
주제 DN 문자열 작성:
함수 호출:
사용 예:
<code class="go">func main() { // Obtain the X509 certificate x509Cert, err := LoadCert(pemBytes) if err != nil { // Handle error } // Retrieve subject DN subj, err := getDNFromCert(x509Cert.Subject, "/") if err != nil { // Handle error } fmt.Println("Subject DN:", subj) }</code>
함수 정의:
<code class="go">func getDNFromCert(namespace pkix.Name, sep string) (string, error) { subject := []string{} for _, s := range namespace.ToRDNSequence() { for _, i := range s { if v, ok := i.Value.(string); ok { subject = append(subject, fmt.Sprintf("%v=%v", i.Type.String(), v)) } else { subject = append(subject, fmt.Sprintf("%v=%v", i.Type.String(), i.Value)) } } } return sep + strings.Join(subject, sep), nil }</code>
예상 출력:
Subject DN: /C=US/O=some organization/OU=unit/CN=common name
위 내용은 Go의 X509 인증서에서 전체 주체 또는 발급자 DN을 추출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!