📄 jcrespec06firewall.html
字号:
</P><PRE CLASS="Codeline"><A NAME="pgfId-406893"></A>getstatic, putstatic</PRE><UL><LI CLASS="Bullet1"><A NAME="pgfId-406897"></A>If the Java Card RE is the currently active context, access is allowed. </LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406899"></A>Otherwise, if the bytecode is <KBD CLASS="Filename-Command">putstatic</KBD> and the field being stored is a reference type and the reference being stored is a reference to a temporary Java Card RE Entry Point Object or a global array, access is denied.</LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406901"></A>Otherwise, access is allowed.</LI><P CLASS="Linebreak"></P></UL><H4 CLASS="Head3"><A NAME="pgfId-406905"></A>6.2.8.2 Accessing <A NAME="marker-416939"></A>Array Objects</H4><P CLASS="Paragraph"><A NAME="pgfId-422848"></A>Bytecodes:</P><PRE CLASS="Codeline"><A NAME="pgfId-406909"></A><T>aload, <T>astore, arraylength, checkcast, instanceof</PRE><UL><LI CLASS="Bullet1"><A NAME="pgfId-406913"></A>If the Java Card RE is the currently active context, access is allowed.</LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406915"></A>Otherwise, if the bytecode is <KBD CLASS="Filename-Command">aastore</KBD> and the component being stored is a reference type and the reference being stored is a reference to a temporary Java Card RE Entry Point Object or a global array, access is denied.</LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406917"></A>Otherwise, if the array is owned by an applet in the currently active context, access is allowed. </LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406919"></A>Otherwise, if the array is designated global, access is allowed. </LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406921"></A>Otherwise, access is denied.</LI><P CLASS="Linebreak"></P></UL><H4 CLASS="Head3"><A NAME="pgfId-406923"></A>6.2.8.3 Accessing <A NAME="marker-416940"></A>Class Instance Object Fields</H4><P CLASS="Paragraph"><A NAME="pgfId-406925"></A>Bytecodes:</P><PRE CLASS="Codeline"><A NAME="pgfId-406927"></A>getfield, putfield</PRE><UL><LI CLASS="Bullet1"><A NAME="pgfId-406931"></A>If the Java Card RE is the currently active context, access is allowed.</LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406933"></A>Otherwise, if the bytecode is <KBD CLASS="Filename-Command">putfield</KBD> and the field being stored is a reference type and the reference being stored is a reference to a temporary Java Card RE Entry Point Object or a global array, access is denied.</LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406935"></A>Otherwise, if the object is owned by an applet in the currently active context, access is allowed. </LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406937"></A>Otherwise, access is denied.</LI><P CLASS="Linebreak"></P></UL><H4 CLASS="Head3"><A NAME="pgfId-406939"></A>6.2.8.4 <A NAME="27335"></A>Accessing <A NAME="marker-416941"></A>Class Instance Object Methods</H4><P CLASS="Paragraph"><A NAME="pgfId-406941"></A>Bytecodes:</P><PRE CLASS="Codeline"><A NAME="pgfId-406943"></A>invokevirtual</PRE><UL><LI CLASS="Bullet1"><A NAME="pgfId-406947"></A>If the object is owned by an applet in the currently active context, access is allowed. </LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406949"></A>Otherwise, if the object is designated a Java Card RE Entry Point Object, access is allowed. Context is switched to the object owner's context (shall be Java Card RE). </LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406951"></A>Otherwise, if Java Card RE is the currently active context, access is allowed. Context is switched to the object owner's context. </LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406953"></A>Otherwise, access is denied.</LI><P CLASS="Linebreak"></P></UL><H4 CLASS="Head3"><A NAME="pgfId-406957"></A>6.2.8.5 <A NAME="marker-416942"></A>Accessing Standard Interface Methods</H4><P CLASS="Paragraph"><A NAME="pgfId-406959"></A>Bytecodes:</P><PRE CLASS="Codeline"><A NAME="pgfId-406961"></A>invokeinterface</PRE><UL><LI CLASS="Bullet1"><A NAME="pgfId-406965"></A>If the object is owned by an applet in the currently active context, access is allowed. </LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406967"></A>Otherwise, if the object is designated a Java Card RE Entry Point Object, access is allowed. Context is switched to the object owner's context (shall be Java Card RE).</LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406969"></A>Otherwise, if the Java Card RE is the currently active context, access is allowed. Context is switched to the object owner's context. </LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406971"></A>Otherwise, access is denied.</LI><P CLASS="Linebreak"></P></UL><H4 CLASS="Head3"><A NAME="pgfId-406973"></A>6.2.8.6 <A NAME="69156"></A>Accessing <A NAME="marker-416943"></A>Shareable Interface Methods</H4><P CLASS="Paragraph"><A NAME="pgfId-406975"></A>Bytecodes:</P><PRE CLASS="Codeline"><A NAME="pgfId-406977"></A>invokeinterface </PRE><UL><LI CLASS="Bullet1"><A NAME="pgfId-406979"></A>If the object is owned by an applet in the currently active context, access is allowed.</LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-413170"></A>Otherwise, if the object is owned by a non-multiselectable applet instance that is not in the context of the currently selected applet instance, and that is active on another logical channel, access is denied. See <A HREF="JCRESpec04selection.html#32535" CLASS="XRef">Section 4.2, Multiselectable Applets</A>.</LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-413174"></A>Otherwise, if the object's class implements a <KBD CLASS="Filename-Command">Shareable</KBD> interface, and if the interface being invoked extends the <KBD CLASS="Filename-Command">Shareable</KBD> interface, access is allowed. Context is switched to the object owner's context.</LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406983"></A>Otherwise, if the Java Card RE is the currently active context, access is allowed. Context is switched to the object owner's context.</LI><P CLASS="Linebreak"></P><LI CLASS="Bullet1"><A NAME="pgfId-406985"></A>Otherwise, access is denied.</LI><P CLASS="Linebreak"></P></UL><H4 CLASS="Head3"><A NAME="pgfId-406987"></A>6.2.8.7 <A NAME="marker-416944"></A>Throwing Exception Objects</H4><P CLASS="Paragraph"><A NAME="pgfId-406989"></A>Bytecodes:</P><PRE CLASS="Codeline"><A NAME="pgfId-406991"></A>athrow</PRE><UL><LI CLASS="Bullet1"><A NAME="pgfId-406995"></A>If the object is owned by an applet in the currently active context, access is allowed. </LI>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -