ソースを参照

Exclude federation user from container principal auto-create

tags/v1.3.0
James Moger 11年前
コミット
aa7d215a9a
1個のファイルの変更10行の追加5行の削除
  1. 10
    5
      src/main/java/com/gitblit/GitBlit.java

+ 10
- 5
src/main/java/com/gitblit/GitBlit.java ファイルの表示

if (usernameDecoded.equalsIgnoreCase(Constants.FEDERATION_USER)) { if (usernameDecoded.equalsIgnoreCase(Constants.FEDERATION_USER)) {
List<String> tokens = getFederationTokens(); List<String> tokens = getFederationTokens();
if (tokens.contains(pw)) { if (tokens.contains(pw)) {
// the federation user is an administrator
UserModel federationUser = new UserModel(Constants.FEDERATION_USER);
federationUser.canAdmin = true;
return federationUser;
return getFederationUser();
} }
} }
} }
logger.debug(MessageFormat.format("{0} authenticated by servlet container principal from {1}", logger.debug(MessageFormat.format("{0} authenticated by servlet container principal from {1}",
user.username, httpRequest.getRemoteAddr())); user.username, httpRequest.getRemoteAddr()));
return user; return user;
} else if (settings.getBoolean(Keys.realm.container.autoCreateAccounts, true)) {
} else if (settings.getBoolean(Keys.realm.container.autoCreateAccounts, false)
&& !username.equalsIgnoreCase(Constants.FEDERATION_USER)) {
// auto-create user from an authenticated container principal // auto-create user from an authenticated container principal
user = new UserModel(username.toLowerCase()); user = new UserModel(username.toLowerCase());
user.displayName = username; user.displayName = username;
String usernameDecoded = decodeUsername(username); String usernameDecoded = decodeUsername(username);
return userService.deleteUser(usernameDecoded); return userService.deleteUser(usernameDecoded);
} }
protected UserModel getFederationUser() {
// the federation user is an administrator
UserModel federationUser = new UserModel(Constants.FEDERATION_USER);
federationUser.canAdmin = true;
return federationUser;
}


/** /**
* Retrieve the user object for the specified username. * Retrieve the user object for the specified username.

読み込み中…
キャンセル
保存