本文整理汇总了Java中sun.security.krb5.internal.KrbApErrException类的典型用法代码示例。如果您正苦于以下问题:Java KrbApErrException类的具体用法?Java KrbApErrException怎么用?Java KrbApErrException使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
KrbApErrException类属于sun.security.krb5.internal包,在下文中一共展示了KrbApErrException类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: checkAndStore
import sun.security.krb5.internal.KrbApErrException; //导入依赖的package包/类
@Override
public synchronized void checkAndStore(KerberosTime currTime, AuthTimeWithHash time)
throws KrbApErrException {
String key = time.client + "|" + time.server;
AuthList rc = content.get(key);
if (DEBUG) {
System.out.println("MemoryCache: add " + time + " to " + key);
}
if (rc == null) {
rc = new AuthList(lifespan);
rc.put(time, currTime);
if (!rc.isEmpty()) {
content.put(key, rc);
}
} else {
if (DEBUG) {
System.out.println("MemoryCache: Existing AuthList:\n" + rc);
}
rc.put(time, currTime);
if (rc.isEmpty()) {
content.remove(key);
}
}
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:25,代码来源:MemoryCache.java
示例2: checkAndStore0
import sun.security.krb5.internal.KrbApErrException; //导入依赖的package包/类
private synchronized void checkAndStore0(KerberosTime currTime, AuthTimeWithHash time)
throws IOException, KrbApErrException {
Path p = getFileName(source, time.server);
int missed = 0;
try (Storage s = new Storage()) {
try {
missed = s.loadAndCheck(p, time, currTime);
} catch (IOException ioe) {
// Non-existing or invalid file
Storage.create(p);
missed = s.loadAndCheck(p, time, currTime);
}
s.append(time);
}
if (missed > EXCESSREPS) {
Storage.expunge(p, currTime);
}
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:19,代码来源:DflCache.java
示例3: checkAndStore
import sun.security.krb5.internal.KrbApErrException; //导入依赖的package包/类
@Override
public void checkAndStore(KerberosTime currTime, AuthTimeWithHash time)
throws KrbApErrException {
try {
checkAndStore0(currTime, time);
} catch (IOException ioe) {
KrbApErrException ke = new KrbApErrException(Krb5.KRB_ERR_GENERIC);
ke.initCause(ioe);
throw ke;
}
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:12,代码来源:DflCache.java
示例4: validatePacSignature
import sun.security.krb5.internal.KrbApErrException; //导入依赖的package包/类
public boolean validatePacSignature(EncryptionKey serverPrivateKey, byte[] PacBytes, PacSignatureData pacServerChecksum) throws KdcErrException, KrbApErrException, KrbCryptoException {
Checksum checksum = new Checksum(pacServerChecksum.getSignatureType(), PacBytes, serverPrivateKey, PacConstants.KERB_NON_KERB_CKSUM_SALT);
byte[] validationSignature = checksum.getBytes();
if (Arrays.equals(validationSignature, pacServerChecksum.getSignatureBytes())) {
return true;
}
return false;
}
开发者ID:jcmturner,项目名称:java-kerberos-utils,代码行数:9,代码来源:Pac.java
示例5: decrypt
import sun.security.krb5.internal.KrbApErrException; //导入依赖的package包/类
public byte[] decrypt(EncryptionKey clientPrivateKey) throws KdcErrException, KrbApErrException, KrbCryptoException{
if (clientPrivateKey.getEType() != this.encryptionType) {
throw new KrbCryptoException("Encryption type of the provided key (" + clientPrivateKey.getEType() + ") does not match that of the data (" + encryptionType + ").");
}
EncryptedData pacCredentialEncData = new EncryptedData(clientPrivateKey.getEType(), clientPrivateKey.getKeyVersionNumber(), pacCredentialEncBytes);
return pacCredentialEncData.decrypt(clientPrivateKey, PacConstants.KERB_NON_KERB_SALT);
}
开发者ID:jcmturner,项目名称:java-kerberos-utils,代码行数:8,代码来源:PacCredentialData.java
示例6: loadAndCheck
import sun.security.krb5.internal.KrbApErrException; //导入依赖的package包/类
private int loadAndCheck(Path p, AuthTimeWithHash time,
KerberosTime currTime)
throws IOException, KrbApErrException {
int missed = 0;
if (Files.isSymbolicLink(p)) {
throw new IOException("Symlink not accepted");
}
try {
Set<PosixFilePermission> perms =
Files.getPosixFilePermissions(p);
if (uid != -1 &&
(Integer)Files.getAttribute(p, "unix:uid") != uid) {
throw new IOException("Not mine");
}
if (perms.contains(PosixFilePermission.GROUP_READ) ||
perms.contains(PosixFilePermission.GROUP_WRITE) ||
perms.contains(PosixFilePermission.GROUP_EXECUTE) ||
perms.contains(PosixFilePermission.OTHERS_READ) ||
perms.contains(PosixFilePermission.OTHERS_WRITE) ||
perms.contains(PosixFilePermission.OTHERS_EXECUTE)) {
throw new IOException("Accessible by someone else");
}
} catch (UnsupportedOperationException uoe) {
// No POSIX permissions? Ignore it.
}
chan = Files.newByteChannel(p, StandardOpenOption.WRITE,
StandardOpenOption.READ);
long timeLimit = currTime.getSeconds() - readHeader(chan);
long pos = 0;
boolean seeNewButNotSame = false;
while (true) {
try {
pos = chan.position();
AuthTime a = AuthTime.readFrom(chan);
if (a instanceof AuthTimeWithHash) {
if (time.equals(a)) {
// Exact match, must be a replay
throw new KrbApErrException(Krb5.KRB_AP_ERR_REPEAT);
} else if (time.isSameIgnoresHash(a)) {
// Two different authenticators in the same second.
// Remember it
seeNewButNotSame = true;
}
} else {
if (time.isSameIgnoresHash(a)) {
// Two authenticators in the same second. Considered
// same if we haven't seen a new style version of it
if (!seeNewButNotSame) {
throw new KrbApErrException(Krb5.KRB_AP_ERR_REPEAT);
}
}
}
if (a.ctime < timeLimit) {
missed++;
} else {
missed--;
}
} catch (BufferUnderflowException e) {
// Half-written file?
chan.position(pos);
break;
}
}
return missed;
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:68,代码来源:DflCache.java
示例7: loadAndCheck
import sun.security.krb5.internal.KrbApErrException; //导入依赖的package包/类
private int loadAndCheck(Path p, AuthTimeWithHash time,
KerberosTime currTime)
throws IOException, KrbApErrException {
int missed = 0;
if (Files.isSymbolicLink(p)) {
throw new IOException("Symlink not accepted");
}
try {
Set<PosixFilePermission> perms =
Files.getPosixFilePermissions(p);
if (uid != -1 &&
(Integer)Files.getAttribute(p, "unix:uid") != uid) {
throw new IOException("Not mine");
}
if (perms.contains(PosixFilePermission.GROUP_READ) ||
perms.contains(PosixFilePermission.GROUP_WRITE) ||
perms.contains(PosixFilePermission.GROUP_EXECUTE) ||
perms.contains(PosixFilePermission.OTHERS_READ) ||
perms.contains(PosixFilePermission.OTHERS_WRITE) ||
perms.contains(PosixFilePermission.OTHERS_EXECUTE)) {
throw new IOException("Accessible by someone else");
}
} catch (UnsupportedOperationException uoe) {
// No POSIX permissions? Ignore it.
}
chan = Files.newByteChannel(p, StandardOpenOption.WRITE,
StandardOpenOption.READ);
long timeLimit = currTime.getSeconds() - readHeader(chan);
long pos = 0;
boolean seeNewButNotSame = false;
while (true) {
try {
pos = chan.position();
AuthTime a = AuthTime.readFrom(chan);
if (a instanceof AuthTimeWithHash) {
if (time.equals(a)) {
// Exact match, must be a replay
throw new KrbApErrException(Krb5.KRB_AP_ERR_REPEAT);
} else if (time.sameTimeDiffHash((AuthTimeWithHash)a)) {
// Two different authenticators in the same second.
// Remember it
seeNewButNotSame = true;
}
} else {
if (time.isSameIgnoresHash(a)) {
// Two authenticators in the same second. Considered
// same if we haven't seen a new style version of it
if (!seeNewButNotSame) {
throw new KrbApErrException(Krb5.KRB_AP_ERR_REPEAT);
}
}
}
if (a.ctime < timeLimit) {
missed++;
} else {
missed--;
}
} catch (BufferUnderflowException e) {
// Half-written file?
chan.position(pos);
break;
}
}
return missed;
}
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:68,代码来源:DflCache.java
注:本文中的sun.security.krb5.internal.KrbApErrException类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论