サービスのJSONとしてHTTP POST
userName
を使用するユースケースがあり、サービスは新しいユーザーを登録する必要があります(指定されたuserName
と自動生成されたパスワード)。春のセキュリティ:新しいユーザーを登録するための公開API
JSON
{
"userName": "Sia"
}
私はSpring Security
を使用しています、と私は直面しています問題があることである:私はHTTP POST
にuserName
を試みるたび
、サービスがすでに認証(ユーザ名とパスワードを要求します)。これは私が欲しいのではない。登録APIを完全に公開したい。つまり、誰もが(許可されていない)HTTP POST
の新しいユーザー名を使用して「アカウントを開く」ことができます。
希望の動作をどのように達成できるかわかりません。サービスの一部は公開されている必要があります(上で説明したように新しいユーザーを作成するようなものです)。一部の部分は実際には公開された公開ユーザーPOST
プロシージャで作成されたユーザーです。何かアドバイス?
のpom.xml
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
</dependencies>
UserController.java
@Autowired
private UserService service;
@RequestMapping(method = RequestMethod.POST, value = "/user")
public void register(@PathVariable String userName) {
System.err.println("!!!!!!!!!!!"); // this line never gets executed
service.save(userName);
}
UserService.java
public void save(String userName) {
String password = pwGenerator.generate();
repository.save(new User(userName, password));
}
ええと、その方法はどこですか?それは何のモジュールですか? – wesleyy
あなたのユーザ名とパスワードをロードするSpringセキュリティの設定 – idipous
まあ、実際にロードすることはありません...ランタイムサービスです。リポジトリにはすべてのユーザがHTTP POSTから専有されています。私はこの方法で何らかの種類の構成クラスを追加すべきだと思いますか? – wesleyy