Вы должны получить String с помощью scanner.next () и вызвать метод String.charAt (0) в возвращаемой строке. Пример:
import java.util.Scanner;
public class InputC{
public static void main(String[] args) {
// TODO Auto-generated method stub
// Declare the object and initialize with
// predefined standard input object
Scanner scanner = new Scanner(System.in);
System.out.println("Enter a character: ");
// Character input
char c = scanner.next().charAt(0);
// Print the read value
System.out.println("You have entered: "+c);
}
}
Выход
Enter a character:
a
You have entered: a
Как правило, аутентификация с помощью клиентских сертификатов выполняется с использованием некоторого частного CA, который выдает клиентские сертификаты, и доверяет CA только при проверке клиентских сертификатов. В этом случае доверенный CA и только этот CA имеет полный контроль над темой сертификата, что означает, что отображение CN на пользователей совершенно нормально и также широко используется.
Если вы по какой-либо причине хотите разрешить сертификаты, выданные произвольными центрами сертификации, то такое простое сопоставление не может быть выполнено, как вы сами поняли. В этом случае может быть выполнено сопоставление между ключом публикации сертификата или отпечатком сертификата, что, конечно, требует, чтобы заранее было известно, какой именно сертификат следует ожидать для конкретного пользователя. И это сопоставление необходимо каким-то образом обновлять всякий раз, когда сертификат клиента должен быть изменен, поскольку срок его действия истек.