Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
JDK 11 java.security.jgss.jmod - Security JGSS Module
JDK 11 java.security.jgss.jmod is the JMOD file for JDK 11 Security JGSS
(Java Generic Security Service) module.
JDK 11 Security JGSS module compiled class files are stored in \fyicenter\jdk-11.0.1\jmods\java.security.jgss.jmod.
JDK 11 Security JGSS module compiled class files are also linked and stored in the \fyicenter\jdk-11.0.1\lib\modules JImage file.
JDK 11 Security JGSS module source code files are stored in \fyicenter\jdk-11.0.1\lib\src.zip\java.security.jgss.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ sun/security/jgss/spnego/SpNegoMechFactory.java
/* * Copyright (c) 2005, 2009, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package sun.security.jgss.spnego; import org.ietf.jgss.*; import sun.security.jgss.*; import sun.security.jgss.spi.*; import sun.security.jgss.krb5.Krb5MechFactory; import sun.security.jgss.krb5.Krb5InitCredential; import sun.security.jgss.krb5.Krb5AcceptCredential; import sun.security.jgss.krb5.Krb5NameElement; import java.security.Provider; import java.util.Vector; /** * SpNego Mechanism plug in for JGSS * This is the properties object required by the JGSS framework. * All mechanism specific information is defined here. * * @author Seema Malkani * @since 1.6 */ public final class SpNegoMechFactory implements MechanismFactory { static final Provider PROVIDER = new sun.security.jgss.SunProvider(); static final Oid GSS_SPNEGO_MECH_OID = GSSUtil.createOid("1.3.6.1.5.5.2"); private static Oid[] nameTypes = new Oid[] { GSSName.NT_USER_NAME, GSSName.NT_HOSTBASED_SERVICE, GSSName.NT_EXPORT_NAME}; // The default underlying mech of SPNEGO, must not be SPNEGO itself. private static final Oid DEFAULT_SPNEGO_MECH_OID = ProviderList.DEFAULT_MECH_OID.equals(GSS_SPNEGO_MECH_OID)? GSSUtil.GSS_KRB5_MECH_OID: ProviderList.DEFAULT_MECH_OID; // Use an instance of a GSSManager whose provider list // does not include native provider final GSSManagerImpl manager; final Oid[] availableMechs; private static SpNegoCredElement getCredFromSubject(GSSNameSpi name, boolean initiate) throws GSSException { Vector<SpNegoCredElement> creds = GSSUtil.searchSubject(name, GSS_SPNEGO_MECH_OID, initiate, SpNegoCredElement.class); SpNegoCredElement result = ((creds == null || creds.isEmpty()) ? null : creds.firstElement()); // Force permission check before returning the cred to caller if (result != null) { GSSCredentialSpi cred = result.getInternalCred(); if (GSSUtil.isKerberosMech(cred.getMechanism())) { if (initiate) { Krb5InitCredential krbCred = (Krb5InitCredential) cred; Krb5MechFactory.checkInitCredPermission ((Krb5NameElement) krbCred.getName()); } else { Krb5AcceptCredential krbCred = (Krb5AcceptCredential) cred; Krb5MechFactory.checkAcceptCredPermission ((Krb5NameElement) krbCred.getName(), name); } } } return result; } public SpNegoMechFactory() { this(GSSCaller.CALLER_UNKNOWN); } public SpNegoMechFactory(GSSCaller caller) { manager = new GSSManagerImpl(caller, false); Oid[] mechs = manager.getMechs(); availableMechs = new Oid[mechs.length-1]; for (int i = 0, j = 0; i < mechs.length; i++) { // Skip SpNego mechanism if (!mechs[i].equals(GSS_SPNEGO_MECH_OID)) { availableMechs[j++] = mechs[i]; } } // Move the preferred mech to first place for (int i=0; i<availableMechs.length; i++) { if (availableMechs[i].equals(DEFAULT_SPNEGO_MECH_OID)) { if (i != 0) { availableMechs[i] = availableMechs[0]; availableMechs[0] = DEFAULT_SPNEGO_MECH_OID; } break; } } } public GSSNameSpi getNameElement(String nameStr, Oid nameType) throws GSSException { return manager.getNameElement( nameStr, nameType, DEFAULT_SPNEGO_MECH_OID); } public GSSNameSpi getNameElement(byte[] name, Oid nameType) throws GSSException { return manager.getNameElement(name, nameType, DEFAULT_SPNEGO_MECH_OID); } public GSSCredentialSpi getCredentialElement(GSSNameSpi name, int initLifetime, int acceptLifetime, int usage) throws GSSException { SpNegoCredElement credElement = getCredFromSubject (name, (usage != GSSCredential.ACCEPT_ONLY)); if (credElement == null) { // get CredElement for the default Mechanism credElement = new SpNegoCredElement (manager.getCredentialElement(name, initLifetime, acceptLifetime, null, usage)); } return credElement; } public GSSContextSpi getMechanismContext(GSSNameSpi peer, GSSCredentialSpi myInitiatorCred, int lifetime) throws GSSException { // get SpNego mechanism context if (myInitiatorCred == null) { myInitiatorCred = getCredFromSubject(null, true); } else if (!(myInitiatorCred instanceof SpNegoCredElement)) { // convert to SpNegoCredElement SpNegoCredElement cred = new SpNegoCredElement(myInitiatorCred); return new SpNegoContext(this, peer, cred, lifetime); } return new SpNegoContext(this, peer, myInitiatorCred, lifetime); } public GSSContextSpi getMechanismContext(GSSCredentialSpi myAcceptorCred) throws GSSException { // get SpNego mechanism context if (myAcceptorCred == null) { myAcceptorCred = getCredFromSubject(null, false); } else if (!(myAcceptorCred instanceof SpNegoCredElement)) { // convert to SpNegoCredElement SpNegoCredElement cred = new SpNegoCredElement(myAcceptorCred); return new SpNegoContext(this, cred); } return new SpNegoContext(this, myAcceptorCred); } public GSSContextSpi getMechanismContext(byte[] exportedContext) throws GSSException { // get SpNego mechanism context return new SpNegoContext(this, exportedContext); } public final Oid getMechanismOid() { return GSS_SPNEGO_MECH_OID; } public Provider getProvider() { return PROVIDER; } public Oid[] getNameTypes() { // nameTypes is cloned in GSSManager.getNamesForMech return nameTypes; } }
⏎ sun/security/jgss/spnego/SpNegoMechFactory.java
Or download all of them as a single archive file:
File name: java.security.jgss-11.0.1-src.zip File size: 216236 bytes Release date: 2018-11-04 Download
⇒ JDK 11 java.security.sasl.jmod - Security SASL Module
2020-09-15, 22167👍, 0💬
Popular Posts:
Provides support for the runtime platform, core utility methods and the extension registry. JAR File...
Jackson is "the Java JSON library" or "the best JSON parser for Java". Or simply as "JSON for Java"....
JRE 8 deploy.jar is the JAR file for JRE 8 Java Control Panel and other deploy tools. JRE (Java Runt...
Java Architecture for XML Binding (JAXB) is a Java API that allows Java developers to map Java class...
How to download and install JDK (Java Development Kit) 7? If you want to write Java applications, yo...